diff options
Diffstat (limited to 'gcc-4.8.1/gcc/testsuite/gcc.dg/tm/20100615.c')
-rw-r--r-- | gcc-4.8.1/gcc/testsuite/gcc.dg/tm/20100615.c | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/gcc-4.8.1/gcc/testsuite/gcc.dg/tm/20100615.c b/gcc-4.8.1/gcc/testsuite/gcc.dg/tm/20100615.c deleted file mode 100644 index 26964d433..000000000 --- a/gcc-4.8.1/gcc/testsuite/gcc.dg/tm/20100615.c +++ /dev/null @@ -1,43 +0,0 @@ -/* { dg-do compile } */ -/* { dg-options "-fgnu-tm -O" } */ - -/* Since the non TM version of new_node() gets optimized away, it - shouldn't appear in the clone table either. */ -/* { dg-final { scan-assembler-not "tm_clone_table" { target { ! *-*-darwin* } } } } */ -/* { dg-final { scan-assembler-not "__DATA,__tm_clone_table" { target *-*-darwin* } } } */ - -#define NULL 0 -extern void *malloc (__SIZE_TYPE__); - -__attribute__((transaction_pure)) -void exit(int status); - -typedef struct node { -} node_t; - -__attribute__((transaction_safe)) -static node_t *new_node(node_t *next) -{ - node_t *node; - node = (node_t *)malloc(sizeof(node_t)); - if (node == NULL) { - exit(1); - } - return NULL; -} - -static node_t *set_new() -{ - node_t *min, *max; - __transaction_atomic { - max = new_node(NULL); - min = new_node(max); - } - return min; -} - -int main(int argc, char **argv) -{ - set_new(); - return 0; -} |