diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/lto')
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20090210_0.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20090313_0.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100518_0.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100709-1_0.c | 7 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100709-1_1.c | 11 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100720-1_0.c | 22 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100720-1_1.c | 15 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100720-2_0.c | 23 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100720-2_1.c | 16 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100720-3_0.c | 24 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100720-3_1.c | 17 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100720-4_0.c | 15 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/20100722-1_0.c | 6 |
13 files changed, 160 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/lto/20090210_0.c b/gcc/testsuite/gcc.dg/lto/20090210_0.c index c588e8a2778..2c858a67d32 100644 --- a/gcc/testsuite/gcc.dg/lto/20090210_0.c +++ b/gcc/testsuite/gcc.dg/lto/20090210_0.c @@ -1,5 +1,7 @@ /* { dg-lto-do run } */ /* { dg-suppress-ld-options {-fPIC} } */ +/* { dg-require-effective-target tls } */ +/* { dg-extra-ld-options "-pthread" { target *-*-solaris2.[89] } } */ int foo (int x) { return x; diff --git a/gcc/testsuite/gcc.dg/lto/20090313_0.c b/gcc/testsuite/gcc.dg/lto/20090313_0.c index 523ae2de7c5..226e647135a 100644 --- a/gcc/testsuite/gcc.dg/lto/20090313_0.c +++ b/gcc/testsuite/gcc.dg/lto/20090313_0.c @@ -1,4 +1,5 @@ /* { dg-lto-options "-mcpu=v9" { target sparc*-*-* } } */ +/* { dg-require-effective-target sync_char_short } */ void _cairo_clip_path_reference () { int a; diff --git a/gcc/testsuite/gcc.dg/lto/20100518_0.c b/gcc/testsuite/gcc.dg/lto/20100518_0.c index 02290b5feb2..c0e9c8be2f7 100644 --- a/gcc/testsuite/gcc.dg/lto/20100518_0.c +++ b/gcc/testsuite/gcc.dg/lto/20100518_0.c @@ -1,4 +1,5 @@ /* { dg-lto-do link } */ +/* { dg-skip-if "" { ! { i?86-*-* x86_64-*-* } } { "*" } { "" } } */ /* Forgot to steam in/out the number of labels for asm goto. PR44184. */ extern int printf (__const char *__restrict __format, ...); diff --git a/gcc/testsuite/gcc.dg/lto/20100709-1_0.c b/gcc/testsuite/gcc.dg/lto/20100709-1_0.c new file mode 100644 index 00000000000..33f38f6c204 --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100709-1_0.c @@ -0,0 +1,7 @@ +/* { dg-lto-do link } */ + +struct X; +struct Y { + struct X (*fnptr)(struct X); +}; +struct Y foo; diff --git a/gcc/testsuite/gcc.dg/lto/20100709-1_1.c b/gcc/testsuite/gcc.dg/lto/20100709-1_1.c new file mode 100644 index 00000000000..b970795c61d --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100709-1_1.c @@ -0,0 +1,11 @@ +struct X { int i; }; +struct Y { + struct X (*fnptr)(struct X); +}; +extern struct Y foo; +int main() +{ + struct X x; + foo.fnptr(x); + return 0; +} diff --git a/gcc/testsuite/gcc.dg/lto/20100720-1_0.c b/gcc/testsuite/gcc.dg/lto/20100720-1_0.c new file mode 100644 index 00000000000..ca9366f6247 --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100720-1_0.c @@ -0,0 +1,22 @@ +/* { dg-lto-do run } */ + +struct X { + int a; +}; + +typedef struct list_node *list; + +struct list_node { + list next; + struct X *value; +}; + +list f(void) +{ + return 0; +} + +int main(void) +{ + return 0; +} diff --git a/gcc/testsuite/gcc.dg/lto/20100720-1_1.c b/gcc/testsuite/gcc.dg/lto/20100720-1_1.c new file mode 100644 index 00000000000..789e88e7d06 --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100720-1_1.c @@ -0,0 +1,15 @@ +struct X { + int b; +}; + +typedef struct list_node *list; + +struct list_node { + list next; + struct X *value; +}; + +list g(void) +{ + return 0; +} diff --git a/gcc/testsuite/gcc.dg/lto/20100720-2_0.c b/gcc/testsuite/gcc.dg/lto/20100720-2_0.c new file mode 100644 index 00000000000..87b13b0de92 --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100720-2_0.c @@ -0,0 +1,23 @@ +/* { dg-lto-do run } */ + +struct X { + int a; +}; + +typedef struct list_node *list; + +struct list_node { + list next; + list *ptr; + struct X *value; +}; + +list f(list lst) +{ + return lst->next; +} + +int main(void) +{ + return 0; +} diff --git a/gcc/testsuite/gcc.dg/lto/20100720-2_1.c b/gcc/testsuite/gcc.dg/lto/20100720-2_1.c new file mode 100644 index 00000000000..b3a2cd06e66 --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100720-2_1.c @@ -0,0 +1,16 @@ +struct X { + int b; +}; + +typedef struct list_node *list; + +struct list_node { + list next; + list *ptr; + struct X *value; +}; + +list *g(list *ptr) +{ + return ptr; +} diff --git a/gcc/testsuite/gcc.dg/lto/20100720-3_0.c b/gcc/testsuite/gcc.dg/lto/20100720-3_0.c new file mode 100644 index 00000000000..99c89ebd7fd --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100720-3_0.c @@ -0,0 +1,24 @@ +/* { dg-lto-do run } */ + +struct X { + int a; +}; + +struct link { + struct list_node *next; +}; + +struct list_node { + struct link lnk; + struct X *value; +}; + +void f(struct list_node *lst) +{ + lst->lnk.next = 0; +} + +int main(void) +{ + return 0; +} diff --git a/gcc/testsuite/gcc.dg/lto/20100720-3_1.c b/gcc/testsuite/gcc.dg/lto/20100720-3_1.c new file mode 100644 index 00000000000..3d323813edd --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100720-3_1.c @@ -0,0 +1,17 @@ +struct X { + int b; +}; + +struct link { + struct list_node *next; +}; + +struct list_node { + struct link lnk; + struct X *value; +}; + +void g(struct list_node *lst) +{ + lst->lnk.next = 0; +} diff --git a/gcc/testsuite/gcc.dg/lto/20100720-4_0.c b/gcc/testsuite/gcc.dg/lto/20100720-4_0.c new file mode 100644 index 00000000000..e7669552fa9 --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100720-4_0.c @@ -0,0 +1,15 @@ +/* { dg-lto-do link } */ +/* { dg-lto-options {{-flto -fsigned-char} {-flto -funsigned-char}} } */ + +char *a; +int f; + +void +foo (void) +{ + f = (*a != '-'); +} +int main() +{ + return 0; +} diff --git a/gcc/testsuite/gcc.dg/lto/20100722-1_0.c b/gcc/testsuite/gcc.dg/lto/20100722-1_0.c new file mode 100644 index 00000000000..275a03c25a0 --- /dev/null +++ b/gcc/testsuite/gcc.dg/lto/20100722-1_0.c @@ -0,0 +1,6 @@ +/* { dg-lto-do run } */ +/* { dg-require-linker-plugin "" } */ +/* { dg-extra-ld-options "-fuse-linker-plugin" } */ + +int main() { return 0; } + |