OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /openrisc/trunk/gnu-old/gcc-4.2.2/gcc/testsuite/gcc.dg/debug
    from Rev 154 to Rev 816
    Reverse comparison

Rev 154 → Rev 816

/pr29558.c
0,0 → 1,30
/* { dg-do compile } */
 
void stpi_unpack_16_1(int length, unsigned char *out, unsigned char bit)
{
unsigned char tempin;
unsigned char temp[16];
for (bit = 128; length > 0; length--) {
if (tempin & 128)
temp[0] |= bit;
else
{
*out++ = temp[1];
*out++ = temp[2];
*out++ = temp[3];
*out++ = temp[4];
*out++ = temp[5];
*out++ = temp[6];
*out++ = temp[7];
*out++ = temp[9];
*out++ = temp[10];
*out++ = temp[11];
*out++ = temp[12];
*out++ = temp[13];
*out++ = temp[14];
*out++ = temp[15];
__builtin_memset (temp, 0, 16);
}
}
}
 
pr29558.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: debug.exp =================================================================== --- debug.exp (nonexistent) +++ debug.exp (revision 816) @@ -0,0 +1,31 @@ +# Copyright (C) 2002, 2007 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# . + +# GCC testsuite that uses the `dg.exp' driver. + +# Load support procs. +load_lib gcc-dg.exp + +# Initialize `dg'. +dg-init + +# Main loop. + +gcc-dg-debug-runtest gcc_target_compile trivial.c [list -O -O3] \ + [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] + +# All done. +dg-finish Index: enum-1.c =================================================================== --- enum-1.c (nonexistent) +++ enum-1.c (revision 816) @@ -0,0 +1,16 @@ +/* Verify that used enums are output. */ +/* { dg-do compile } */ +/* { dg-final { scan-assembler "JTI_MAX" } } */ + +int var; + +enum java_tree_index +{ + JTI_MAX +}; + +void function (void) +{ + var = JTI_MAX; +} +
enum-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: pr32610.c =================================================================== --- pr32610.c (nonexistent) +++ pr32610.c (revision 816) @@ -0,0 +1,14 @@ +/* PR debug/32610 */ +/* { dg-do compile } */ + +inline void +foo (int x) +{ + double (*arr)[x]; +} + +void +bar (void) +{ + foo (1); +}
pr32610.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: crash1.c =================================================================== --- crash1.c (nonexistent) +++ crash1.c (revision 816) @@ -0,0 +1,8 @@ +/* PR c/14492 */ +/* { dg-options "" } */ + +int main() { + double d = 1.0; + char x[(int) d]; + return 0; +}
crash1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: debug-1.c =================================================================== --- debug-1.c (nonexistent) +++ debug-1.c (revision 816) @@ -0,0 +1,34 @@ +/* Verify that the scheduler does not discard the lexical block. */ +/* { dg-do compile } */ +/* { dg-options "-dA" } */ +/* On MIPS targets that support conditional moves, the optimal + implementation of this function is: + + l[wd] tmp,p + li $2,2 + jr $31 + movz $2,$0,tmp + + After if-conversion, we have a conditional move into a pseudo P + followed a copy of P into the return register ($2). P is associated + with xyzzy, so if-conversion is behaving as expected, and has not lost + the variable association. The destination of the second instruction + is associated with the function return value. Combine then combines + these two instructions, removing the last use of P and xyzzy. + + Everything is behaving as expected in this scenario, so we avoid + using conditional moves for this test. */ +/* { dg-options "-dA -fno-if-conversion" { target mips*-*-* } } */ +/* { dg-final { scan-assembler "xyzzy" } } */ + +long p; + +long foo(void) +{ + { + long xyzzy = 0; + if (p) + xyzzy = 2; + return xyzzy; + } +}
debug-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: debug-2.c =================================================================== --- debug-2.c (nonexistent) +++ debug-2.c (revision 816) @@ -0,0 +1,24 @@ +/* Verify that the scheduler does not discard the lexical block. */ +/* { dg-do compile } */ +/* { dg-options "-dA" } */ +/* See the comment in debug-1.c. */ +/* { dg-options "-dA -fno-if-conversion" { target mips*-*-* } } */ +/* { dg-final { scan-assembler "xyzzy" } } */ + +long p; + +long foo(void) +{ + if (1) + { + long xyzzy = 0; + if (p) + xyzzy = 2; + return xyzzy; + } + else + { + int x = 0; + return x; + } +}
debug-2.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20020220-1.c =================================================================== --- 20020220-1.c (nonexistent) +++ 20020220-1.c (revision 816) @@ -0,0 +1,31 @@ +/* PR debug/4461 + This testcase failed to link in Dwarf-2 because + constant -4.0 in constant pool was never referenced by anything + but Dwarf-2 location descriptor. */ +/* { dg-do run } */ + +void __attribute__((noinline)) +foo (const char *x __attribute__((unused)), + __complex__ long double y __attribute__((unused)), + __complex__ long double z __attribute__((unused))) +{ +} + +void +bar (void) +{ + foo ("", + __builtin_conjl (({ __complex__ long double r; + __real__ r = 3.0; + __imag__ r = -4.0; + r; })), + ({ __complex__ long double s; + __real__ s = 3.0; + __imag__ s = 4.0; + s; })); +} + +int main (void) +{ + return 0; +}
20020220-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: debug-3.c =================================================================== --- debug-3.c (nonexistent) +++ debug-3.c (revision 816) @@ -0,0 +1,34 @@ +/* This testcase failed, because scope containing baz was deleted + (spanned 0 basic blocks) and DWARF-2 couldn't find baz origin. */ +/* { dg-do compile } */ + +struct A { char *a, *b, *c, *d; }; + +static int +bar (struct A *x) +{ + return x->c - x->b; +} + +void fnptr (void (*fn) (void)); + +void +foo (void) +{ + struct A e; + + { + void baz (void) + { + bar (&e); + } + fnptr (baz); + } + { + struct A *f; + + f = &e; + if (f->c - f->a > f->d - f->a) + f->c = f->d; + } +}
debug-3.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: debug-4.c =================================================================== --- debug-4.c (nonexistent) +++ debug-4.c (revision 816) @@ -0,0 +1,26 @@ +/* This testcase failed, because scope containing baz was not emitted + (doesn't contain any instructions) and DWARF-2 couldn't find baz origin. */ +/* { dg-do compile } */ + +struct A { char *a, *b, *c, *d; }; + +static int +bar (struct A *x) +{ + return x->c - x->b; +} + +void +foo (void) +{ + struct A e; + + { + int baz (void) + { + return bar (&e); + } + } + if (e.c - e.a > e.d - e.a) + e.c = e.d; +}
debug-4.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20000503-1.c =================================================================== --- 20000503-1.c (nonexistent) +++ 20000503-1.c (revision 816) @@ -0,0 +1,16 @@ +/* { dg-do compile } */ + +/* Distilled from GCC's stmt.c. Caused abort in dwarf-1 code. */ + +static void +expand_nl_goto_receiver () +{ +{ +static struct elims {int from, to;} elim_regs[] = {{ 16, 7}, { 16, 6}, { 20, 7},{ 20, 6}}; + int i; + + for (i = 0; i < sizeof elim_regs / sizeof elim_regs[0]; i++) + if (elim_regs[i].from == 16 && elim_regs[i].to == 6) + break; + } +}
20000503-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20020104-2.c =================================================================== --- 20020104-2.c (nonexistent) +++ 20020104-2.c (revision 816) @@ -0,0 +1,9 @@ +/* This testcase used to fail because outlining_inline_function was called + too early, before rtl was generated. */ +/* { dg-do compile } */ + +int foo (const int *x) +{ + char a[*x]; + return 0; +}
20020104-2.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: debug-5.c =================================================================== --- debug-5.c (nonexistent) +++ debug-5.c (revision 816) @@ -0,0 +1,46 @@ +/* This testcase failed, because scope containing baz was deleted + (spanned 0 basic blocks) and DWARF-2 couldn't find baz origin. */ +/* { dg-do compile } */ + +extern void abort (void); + +struct A { char *a, *b, *c, *d; }; + +static int +bar (struct A *x) +{ + return x->c - x->b; +} + +static int +bar2 (struct A *x) +{ + int a = x->c - x->b; + x->c += 26; + return a; +} + +void fnptr (void (*fn) (void)); + +void +foo (void) +{ + struct A e; + + if (bar2 (&e) < 0) + abort (); + { + void baz (void) + { + bar (&e); + } + fnptr (baz); + } + { + struct A *f; + + f = &e; + if (f->c - f->a > f->d - f->a) + f->c = f->d; + } +}
debug-5.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20031231-1.c =================================================================== --- 20031231-1.c (nonexistent) +++ 20031231-1.c (revision 816) @@ -0,0 +1,21 @@ +/* { dg-do compile } */ + +/* We used to fail because GCC didn't expect always inline to be inlined at + -O0. */ +typedef union tree_node *tree; +typedef struct c_pretty_print_info c_pretty_printer; + + +void pp_c_string_literal (c_pretty_printer *, tree); + + +static __inline__ __attribute__((always_inline)) void +pp_c_shift_expression (c_pretty_printer *pp, tree e) +{ +} + +static void +pp_c_relational_expression (c_pretty_printer *pp, tree e) +{ + pp_c_shift_expression (pp, e); +}
20031231-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: debug-6.c =================================================================== --- debug-6.c (nonexistent) +++ debug-6.c (revision 816) @@ -0,0 +1,38 @@ +/* Verify that bb-reorder re-inserts nested scopes properly. */ +/* { dg-do compile } */ +/* { dg-options "-dA" } */ +/* { dg-final { scan-assembler "xyzzy" } } */ + +extern void abort (void); + +struct A { char *a, *b, *c, *d; }; + +static int +bar2 (struct A *x) +{ + int a = x->c - x->b; + x->c += 26; + return a; +} + +void fnptr (int *); + +void +foo (void) +{ + struct A e; + + if (bar2 (&e) < 0) + abort (); + { + int xyzzy; + fnptr (&xyzzy); + } + { + struct A *f; + + f = &e; + if (f->c - f->a > f->d - f->a) + f->c = f->d; + } +}
debug-6.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20010207-1.c =================================================================== --- 20010207-1.c (nonexistent) +++ 20010207-1.c (revision 816) @@ -0,0 +1,4 @@ +/* { dg-do compile } */ +extern inline int f1 (void) {return f2();} +int f3 (void) {return f1();} +int f1 (void) {return 0;}
20010207-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20020224-1.c =================================================================== --- 20020224-1.c (nonexistent) +++ 20020224-1.c (revision 816) @@ -0,0 +1,60 @@ +/* { dg-do compile } */ + +/* Here's the deal: f3 is not inlined because it's too big, but f2 and + f1 are inlined into it. We used to fail to emit debugging info for + t1, because it was moved inside the (inlined) block of f1, marked + as abstract, then we'd crash. */ + +#define UNUSED __attribute__((unused)) +#define EXT __extension__ + +int undef(void); + +inline static void +f1 (int i UNUSED) +{ +} + +inline static void +f2 (void) +{ + f1 (EXT ({ int t1 UNUSED; undef (); })); +} + +inline static void +f3 (void) +{ + int v1 UNUSED; + int v2 UNUSED; + + EXT ({ int t2 UNUSED; if (0) undef (); 0; }) + && EXT ({ int t3 UNUSED; if (0) undef (); 0; }); + + if (1) + { + undef (); + if (1) + f2 (); + } + + { + undef (); + } +} + +inline static void +f4 (void) +{ + EXT ({ undef (); 1; }) && EXT ({ int t4 UNUSED = ({ 1; }); 1; }); + + { } + + EXT ({ int t5 UNUSED; if (0) undef (); 0; }); + + f4 (); + + undef (); + f3 (); + + return; +}
20020224-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: debug-7.c =================================================================== --- debug-7.c (nonexistent) +++ debug-7.c (revision 816) @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-options "-dA" } */ +/* PR debug/12934. */ + +static inline int foo () +{ + return 42; +} + +void bar (int *); + +void baz () +{ + int a[foo ()]; + bar (a); +}
debug-7.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: pr16676.c =================================================================== --- pr16676.c (nonexistent) +++ pr16676.c (revision 816) @@ -0,0 +1,5 @@ +/* { dg-do compile } */ + +void foo (void) { + void nested () {} +}
pr16676.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: redecl-1.c =================================================================== --- redecl-1.c (nonexistent) +++ redecl-1.c (revision 816) @@ -0,0 +1,352 @@ +/* Test for multiple declarations and composite types. As in bug + 13801. Test no problems in debug information generation. */ +/* Origin: Joseph Myers */ +/* { dg-do compile } */ +/* { dg-options "" } */ + +typedef int IA[]; +typedef int A10[10]; + +/* Test all combinations of: a variable declared at file scope (no + type specifiers, or extern, or static), or just inside a function + (with extern), redeclared in an inner scope (with extern), and + redeclared in an inner scope when the previous declaration is + hidden (with extern, and not if the original declaration was + static). Test three times: incomplete variable types; pointers to + incomplete types; functions returning such pointers. + + This test only includes the valid code cases, to test debug info + generation. (Incomplete static at file scope is not permitted by + ISO C, but is accepted by GCC as an extension without + -pedantic.) */ + +A10 a5; +void +f5 (void) +{ + sizeof(a5); + { + extern IA a5; + sizeof(a5); + { + int a5; + { + extern A10 a5; + sizeof(a5); + } + } + sizeof(a5); + } + sizeof(a5); +} +extern A10 a5; + +A10 a7; +void +f7 (void) +{ + sizeof(a7); + { + extern A10 a7; + sizeof(a7); + { + int a7; + { + extern A10 a7; + sizeof(a7); + } + } + sizeof(a7); + } + sizeof(a7); +} +extern A10 a7; + +extern A10 a13; +void +f13 (void) +{ + sizeof(a13); + { + extern IA a13; + sizeof(a13); + { + int a13; + { + extern A10 a13; + sizeof(a13); + } + } + sizeof(a13); + } + sizeof(a13); +} +extern A10 a13; + +extern A10 a15; +void +f15 (void) +{ + sizeof(a15); + { + extern A10 a15; + sizeof(a15); + { + int a15; + { + extern A10 a15; + sizeof(a15); + } + } + sizeof(a15); + } + sizeof(a15); +} +extern A10 a15; + + +static A10 a18; +void +f18 (void) +{ + sizeof(a18); + { + extern IA a18; + sizeof(a18); + } + sizeof(a18); +} +extern A10 a18; + +static A10 a19; +void +f19 (void) +{ + sizeof(a19); + { + extern A10 a19; + sizeof(a19); + } + sizeof(a19); +} +extern A10 a19; + +A10 *b5; +void +g5 (void) +{ + sizeof(*b5); + { + extern IA *b5; + sizeof(*b5); + { + int b5; + { + extern A10 *b5; + sizeof(*b5); + } + } + sizeof(*b5); + } + sizeof(*b5); +} +extern A10 *b5; + +A10 *b7; +void +g7 (void) +{ + sizeof(*b7); + { + extern A10 *b7; + sizeof(*b7); + { + int b7; + { + extern A10 *b7; + sizeof(*b7); + } + } + sizeof(*b7); + } + sizeof(*b7); +} +extern A10 *b7; + +extern A10 *b13; +void +g13 (void) +{ + sizeof(*b13); + { + extern IA *b13; + sizeof(*b13); + { + int b13; + { + extern A10 *b13; + sizeof(*b13); + } + } + sizeof(*b13); + } + sizeof(*b13); +} +extern A10 *b13; + +extern A10 *b15; +void +g15 (void) +{ + sizeof(*b15); + { + extern A10 *b15; + sizeof(*b15); + { + int b15; + { + extern A10 *b15; + sizeof(*b15); + } + } + sizeof(*b15); + } + sizeof(*b15); +} +extern A10 *b15; + +static A10 *b18; +void +g18 (void) +{ + sizeof(*b18); + { + extern IA *b18; + sizeof(*b18); + } + sizeof(*b18); +} +extern A10 *b18; + +static A10 *b19; +void +g19 (void) +{ + sizeof(*b19); + { + extern A10 *b19; + sizeof(*b19); + } + sizeof(*b19); +} +extern A10 *b19; + +A10 *c5 (void); +void +h5 (void) +{ + sizeof(*c5()); + { + extern IA *c5 (void); + sizeof(*c5()); + { + int c5; + { + extern A10 *c5 (void); + sizeof(*c5()); + } + } + sizeof(*c5()); + } + sizeof(*c5()); +} +A10 *c5 (void) { return 0; } + +A10 *c7 (void); +void +h7 (void) +{ + sizeof(*c7()); + { + extern A10 *c7 (void); + sizeof(*c7()); + { + int c7; + { + extern A10 *c7 (void); + sizeof(*c7()); + } + } + sizeof(*c7()); + } + sizeof(*c7()); +} +A10 *c7 (void) { return 0; } + +extern A10 *c13 (void); +void +h13 (void) +{ + sizeof(*c13()); + { + extern IA *c13 (void); + sizeof(*c13()); + { + int c13; + { + extern A10 *c13 (void); + sizeof(*c13()); + } + } + sizeof(*c13()); + } + sizeof(*c13()); +} +extern A10 *c13 (void) { return 0; } + +extern A10 *c15 (void); +void +h15 (void) +{ + sizeof(*c15()); + { + extern A10 *c15 (void); + sizeof(*c15()); + { + int c15; + { + extern A10 *c15 (void); + sizeof(*c15()); + } + } + sizeof(*c15()); + } + sizeof(*c15()); +} +extern A10 *c15 (void) { return 0; } + +static A10 *c18 (void); +void +h18 (void) +{ + sizeof(*c18()); + { + extern IA *c18 (void); + sizeof(*c18()); + } + sizeof(*c18()); +} +static A10 *c18 (void) { return 0; } + +static A10 *c19 (void); +void +h19 (void) +{ + sizeof(*c19()); + { + extern A10 *c19 (void); + sizeof(*c19()); + } + sizeof(*c19()); +} +static A10 *c19 (void) { return 0; }
redecl-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: redecl-2.c =================================================================== --- redecl-2.c (nonexistent) +++ redecl-2.c (revision 816) @@ -0,0 +1,24 @@ +/* Test for multiple declarations and composite types. As in bug + 13801. Illustrates how bug causes correct code to be wrongly + diagnosed. Debug test: avoid ICE. */ +/* Origin: Joseph Myers */ +/* { dg-do compile } */ +/* { dg-options "" } */ + +typedef int IA[]; +typedef int A5[5]; +typedef int A10[10]; + +A10 array10; + +A5 *ap; +void +f (void) +{ + int ap; + { + extern IA *ap; + /* This assignment is valid. */ + ap = &array10; + } +}
redecl-2.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20030605-1.c =================================================================== --- 20030605-1.c (nonexistent) +++ 20030605-1.c (revision 816) @@ -0,0 +1,7 @@ +/* Verify we don't ICE on statement-expressions. */ +/* { dg-do compile } */ + +void foo(void) +{ + char buf[({ 4; })]; +}
20030605-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20020327-1.c =================================================================== --- 20020327-1.c (nonexistent) +++ 20020327-1.c (revision 816) @@ -0,0 +1,12 @@ +/* { dg-do link } */ + +#ifndef __powerpc64__ +/* Fails on powerpc64-linux due to the function Letext using a global + .Letext symbol that conflicts with .Letext emitted by gcc with + -gstabs. Some day the linker will be fixed to not require global + "dot" syms, but for now disable this test entirely for powerpc64. + Using xfail doesn't work, nor does dg-excess-errors because some + combinations of command line options won't cause this test to fail. */ +void Letext (void) { } +#endif +int main() { return 0; }
20020327-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: redecl-3.c =================================================================== --- redecl-3.c (nonexistent) +++ redecl-3.c (revision 816) @@ -0,0 +1,12 @@ +/* Test for multiple declarations and composite types. */ + +/* Origin: Joseph Myers */ +/* { dg-do compile } */ +/* { dg-options "" } */ + +int y[]; +void +g (void) +{ + extern int y[1]; +}
redecl-3.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: redecl-4.c =================================================================== --- redecl-4.c (nonexistent) +++ redecl-4.c (revision 816) @@ -0,0 +1,12 @@ +/* Test for multiple declarations and composite types. */ + +/* Origin: Joseph Myers */ +/* { dg-do compile } */ +/* { dg-options "" } */ + +static int y[]; +void +g (void) +{ + extern int y[1]; +}
redecl-4.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: redecl-5.c =================================================================== --- redecl-5.c (nonexistent) +++ redecl-5.c (revision 816) @@ -0,0 +1,31 @@ +/* Test for multiple declarations and composite types, as in bug + 13801. Test types saved from outer scopes are up to date. Debug + test. */ +/* Origin: Joseph Myers */ +/* { dg-do compile } */ +/* { dg-options "" } */ + +int x[]; + +void +f (void) +{ + extern int x[]; +} + +int x[10]; + +void +g (void) +{ + int x; + { + extern int x[10]; + } +} + +void +h (void) +{ + sizeof (x); +}
redecl-5.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20041219-1.c =================================================================== --- 20041219-1.c (nonexistent) +++ 20041219-1.c (revision 816) @@ -0,0 +1,8 @@ +/* PR 18067 */ +/* { dg-do compile } */ + +void foo(int i) +{ + const int j=i+1; + int a[1][j*j]; +}
20041219-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20050907-1.c =================================================================== --- 20050907-1.c (nonexistent) +++ 20050907-1.c (revision 816) @@ -0,0 +1,24 @@ +/* PR 23190 */ +/* Well, collateral damage from a proposed patch fixing 23190. We'd emit + debug info for multilib_exclusions_raw without emitting the variable + itself, leading to link errors. This reduced form is filed as PR 23777, + for not eliminating things soon enough. */ +/* { dg-do link } */ + +static const char *const multilib_exclusions_raw[] = { 0 }; + +void __attribute__((noinline)) f(char *const *p) +{ + __asm__ ("" : : "g"(p) : "memory"); +} + +void g (char **o) +{ + const char *const *q = multilib_exclusions_raw; + + f (o); + while (*q++) + f (o); +} + +int main() { return 0; }
20050907-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf2.exp =================================================================== --- dwarf2/dwarf2.exp (nonexistent) +++ dwarf2/dwarf2.exp (revision 816) @@ -0,0 +1,42 @@ +# Copyright (C) 2002, 2007 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# . + +# GCC testsuite that uses the `dg.exp' driver. + +# Load support procs. +load_lib gcc-dg.exp + +# If a testcase doesn't have special options, use these. +global DEFAULT_CFLAGS +if ![info exists DEFAULT_CFLAGS] then { + set DEFAULT_CFLAGS " -ansi -pedantic-errors -gdwarf-2" +} + +# Initialize `dg'. +dg-init + +# Main loop. +set comp_output [gcc_target_compile \ + "$srcdir/$subdir/../trivial.c" "trivial.S" assembly \ + "additional_flags=-gdwarf-2"] +if { ! [string match "*: target system does not support the * debug format*" \ + $comp_output] } { + dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] \ + "" $DEFAULT_CFLAGS +} + +# All done. +dg-finish Index: dwarf2/dwarf-char1.c =================================================================== --- dwarf2/dwarf-char1.c (nonexistent) +++ dwarf2/dwarf-char1.c (revision 816) @@ -0,0 +1,13 @@ +/* PR debug/7241 */ +/* { dg-do compile } */ +/* { dg-options "-O2 -gdwarf-2 -dA" } */ +/* { dg-skip-if "Unmatchable assembly" { mmix-*-* } { "*" } { "" } } */ +/* { dg-final { scan-assembler "0x\[68\]\[ \t\]+\[#@;!/|\]+\[ \t\]+DW_AT_encoding" } } */ +/* { dg-final { scan-assembler-not "0x\[57\]\[ \t\]+\[#@;!/|\]+\[ \t\]+DW_AT_encoding" } } */ + +char a; +const char b; +signed char c; +volatile signed char d; +unsigned char e; +volatile const unsigned char f;
dwarf2/dwarf-char1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-merge.c =================================================================== --- dwarf2/dwarf-merge.c (nonexistent) +++ dwarf2/dwarf-merge.c (revision 816) @@ -0,0 +1,10 @@ +/* Verify that mergeable strings are used in the CU DIE. */ +/* { dg-do compile } */ +/* { dg-require-effective-target string_merging } */ +/* { dg-options "-O2 -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler "DW_AT_producer: \"GNU C" } } */ +/* { dg-final { scan-assembler-not "GNU C\[^\\n\\r\]*DW_AT_producer" } } */ + +void func (void) +{ +}
dwarf2/dwarf-merge.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-char2.c =================================================================== --- dwarf2/dwarf-char2.c (nonexistent) +++ dwarf2/dwarf-char2.c (revision 816) @@ -0,0 +1,13 @@ +/* PR debug/7241 */ +/* { dg-do compile } */ +/* { dg-options "-O2 -gdwarf-2 -dA" } */ +/* { dg-skip-if "Unmatchable assembly" { mmix-*-* } { "*" } { "" } } */ +/* { dg-final { scan-assembler "0x\[68\]\[ \t\]+\[#@;!/|\]+\[ \t\]+DW_AT_encoding" } } */ +/* { dg-final { scan-assembler-not "0x\[57\]\[ \t\]+\[#@;!/|\]+\[ \t\]+DW_AT_encoding" } } */ + +const char a; +char b; +volatile signed char c; +signed char d; +const volatile unsigned char e; +unsigned char f;
dwarf2/dwarf-char2.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-char3.c =================================================================== --- dwarf2/dwarf-char3.c (nonexistent) +++ dwarf2/dwarf-char3.c (revision 816) @@ -0,0 +1,8 @@ +/* PR debug/7241 */ +/* { dg-do compile } */ +/* { dg-options "-O2 -gdwarf-2 -dA" } */ +/* { dg-skip-if "Unmatchable assembly" { mmix-*-* } { "*" } { "" } } */ +/* { dg-final { scan-assembler "0x\[68\]\[ \t\]+\[#@;!/|\]+\[ \t\]+DW_AT_encoding" } } */ +/* { dg-final { scan-assembler-not "0x\[57\]\[ \t\]+\[#@;!/|\]+\[ \t\]+DW_AT_encoding" } } */ + +const char *p = "abc";
dwarf2/dwarf-char3.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-file1.c =================================================================== --- dwarf2/dwarf-file1.c (nonexistent) +++ dwarf2/dwarf-file1.c (revision 816) @@ -0,0 +1,9 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler "File Entry:|.file" } } */ +/* Verify that a file entry is output for this file. Only systems that + do not define HAVE_AS_DWARF2_DEBUG_LINE will put out "File Entry:", + but systems that do define HAVE_AS_DWARF2_DEBUG_LINE will put out a + ".file" so we check for either. */ + +int bar = 3;
dwarf2/dwarf-file1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-float.c =================================================================== --- dwarf2/dwarf-float.c (nonexistent) +++ dwarf2/dwarf-float.c (revision 816) @@ -0,0 +1,15 @@ +/* Verify the DWARF encoding of C99 floating point types. */ + +/* { dg-do compile */ +/* { dg-options "-O0 -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler "0x4.*DW_AT_encoding" } } */ +/* { dg-final { scan-assembler "0x4.*DW_AT_byte_size" } } */ +/* { dg-final { scan-assembler "0x8.*DW_AT_byte_size" } } */ +/* { dg-final { scan-assembler "0x10.*DW_AT_byte_size" } } */ + +void foo () +{ + float f = 1.5f; + double d = 1.5; + long double l = 1.5l; +}
dwarf2/dwarf-float.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-uninit.c =================================================================== --- dwarf2/dwarf-uninit.c (nonexistent) +++ dwarf2/dwarf-uninit.c (revision 816) @@ -0,0 +1,10 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler "DW_TAG_variable" } } */ +/* PR debug/21828 */ + +static int i; +int main() { + i += 3; + return 0; +}
dwarf2/dwarf-uninit.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/var1.c =================================================================== --- dwarf2/var1.c (nonexistent) +++ dwarf2/var1.c (revision 816) @@ -0,0 +1,10 @@ +/* PR 23190 */ +/* { dg-do compile } +/* { dg-options "-gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler "xyzzy\[^\\n\\r\]+DW_AT_name" } } */ + +void f(void) +{ + static int xyzzy; + xyzzy += 3; +}
dwarf2/var1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/var2.c =================================================================== --- dwarf2/var2.c (nonexistent) +++ dwarf2/var2.c (revision 816) @@ -0,0 +1,14 @@ +/* PR 23190 */ +/* { dg-do compile } +/* { dg-options "-O2 -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler "DW_OP_addr\[\\n\\r\]+\[^\\n\\r\]+foo" } } */ +/* { dg-final { scan-assembler "DW_OP_addr\[\\n\\r\]+\[^\\n\\r\]+bar" } } */ + +static int foo; +int bar; +int main(void) +{ + foo += 3; + bar *= 5; + return 0; +}
dwarf2/var2.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-dfp.c =================================================================== --- dwarf2/dwarf-dfp.c (nonexistent) +++ dwarf2/dwarf-dfp.c (revision 816) @@ -0,0 +1,16 @@ +/* Verify the DWARF encoding of C99 decimal floating point types. */ + +/* { dg-do compile */ +/* { dg-require-effective-target dfp } */ +/* { dg-options "-O0 -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler "0x10.*DW_AT_encoding" } } */ +/* { dg-final { scan-assembler "0x4.*DW_AT_byte_size" } } */ +/* { dg-final { scan-assembler "0x8.*DW_AT_byte_size" } } */ +/* { dg-final { scan-assembler "0x10.*DW_AT_byte_size" } } */ + +void foo () +{ + _Decimal32 f = 1.5df; + _Decimal64 d = 1.5dd; + _Decimal128 l = 1.5dl; +}
dwarf2/dwarf-dfp.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/c99-typedef1.c =================================================================== --- dwarf2/c99-typedef1.c (nonexistent) +++ dwarf2/c99-typedef1.c (revision 816) @@ -0,0 +1,9 @@ +// { dg-options "-std=iso9899:1999 -gdwarf-2" } + +void f() { + int n = 3; + typedef int T[n++]; + + T t; + t[0] = 7; +}
dwarf2/c99-typedef1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-die1.c =================================================================== --- dwarf2/dwarf-die1.c (nonexistent) +++ dwarf2/dwarf-die1.c (revision 816) @@ -0,0 +1,8 @@ +/* Verify that inline function never actually inlined has no abstract DIE. */ +/* { dg-do compile } */ +/* { dg-options "-O2 -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler-not "DW_AT_inline" } } */ +inline int t() +{ +} +int (*q)()=t;
dwarf2/dwarf-die1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf2-macro.c =================================================================== --- dwarf2/dwarf2-macro.c (nonexistent) +++ dwarf2/dwarf2-macro.c (revision 816) @@ -0,0 +1,13 @@ +/* Test to make sure the mcaro info includes a start file command for the main source */ +/* { dg-do compile } */ +/* { dg-options "-g3 -gdwarf-2 -dA -fverbose-asm" } */ +/* { dg-final { scan-assembler "Start new file" } } */ + +#define ADD(x) (M + x) + +int main (void) +{ +#define N 28 +#define M 42 + return ADD(N); +}
dwarf2/dwarf2-macro.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/const-1.c =================================================================== --- dwarf2/const-1.c (nonexistent) +++ dwarf2/const-1.c (revision 816) @@ -0,0 +1,6 @@ +/* { dg-do compile } */ +/* { dg-options "-O -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler "DW_AT_const_value" } } */ + +extern void x(); +static void (*f)() = x;
dwarf2/const-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-die2.c =================================================================== --- dwarf2/dwarf-die2.c (nonexistent) +++ dwarf2/dwarf-die2.c (revision 816) @@ -0,0 +1,7 @@ +/* Verify that inline function never actually emit has no DIE. */ +/* { dg-do compile } */ +/* { dg-options "-O0 -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler-not "CIE Version" } } */ +static inline int t() +{ +}
dwarf2/dwarf-die2.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-die3.c =================================================================== --- dwarf2/dwarf-die3.c (nonexistent) +++ dwarf2/dwarf-die3.c (revision 816) @@ -0,0 +1,11 @@ +/* Verify that extern inline function never actually inlined has no abstract DIE. */ +/* { dg-do compile } */ +/* { dg-options "-O0 -gdwarf-2 -dA" } */ +/* { dg-final { scan-assembler-not "DW_AT_inline" } } */ +extern inline int t() +{ +} +int (*q)()=t; +int t() +{ +}
dwarf2/dwarf-die3.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/const-2.c =================================================================== --- dwarf2/const-2.c (nonexistent) +++ dwarf2/const-2.c (revision 816) @@ -0,0 +1,6 @@ +/* { dg-do compile { target powerpc_altivec_ok } } */ +/* { dg-options "-O -gdwarf-2 -dA -maltivec" } */ +/* { dg-final { scan-assembler "DW_AT_const_value" } } */ + +typedef float FloatVect __attribute__((__vector_size__(16))); +static FloatVect Foo = { 250000000.0, 0.0, 0.0, 0.0 };
dwarf2/const-2.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-die5.c =================================================================== --- dwarf2/dwarf-die5.c (nonexistent) +++ dwarf2/dwarf-die5.c (revision 816) @@ -0,0 +1,12 @@ +/* Inlined inline function must have abstract DIE */ +/* { dg-do compile } */ +/* { dg-options "-O2 -gdwarf-2 -dA -fpreprocessed" } */ +/* { dg-final { scan-assembler "3.*DW_AT_inline" } } */ +#1 "test.h" +inline int t() +{ +} +int q() +{ + t(); +}
dwarf2/dwarf-die5.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/const-2b.c =================================================================== --- dwarf2/const-2b.c (nonexistent) +++ dwarf2/const-2b.c (revision 816) @@ -0,0 +1,6 @@ +/* { dg-do compile { target i386*-*-* } } */ +/* { dg-options "-O -gdwarf-2 -dA -msse" } */ +/* { dg-final { scan-assembler "DW_AT_const_value" } } */ + +typedef float FloatVect __attribute__((__vector_size__(16))); +static FloatVect Foo = { 250000000.0, 0.0, 0.0, 0.0 };
dwarf2/const-2b.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-die6.c =================================================================== --- dwarf2/dwarf-die6.c (nonexistent) +++ dwarf2/dwarf-die6.c (revision 816) @@ -0,0 +1,12 @@ +/* not inline inline function must not have abstract DIE */ +/* { dg-do compile } */ +/* { dg-options "-O2 -fno-inline -gdwarf-2 -dA -fpreprocessed" } */ +/* { dg-final { scan-assembler-not "DW_AT_inline" } } */ +#1 "test.h" +inline int t() +{ +} +int q() +{ + t(); +}
dwarf2/dwarf-die6.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2/dwarf-die7.c =================================================================== --- dwarf2/dwarf-die7.c (nonexistent) +++ dwarf2/dwarf-die7.c (revision 816) @@ -0,0 +1,14 @@ +/* Inlined non-inline function must have abstract DIE */ +/* { dg-do compile } */ +/* { dg-options "-O2 -gdwarf-2 -dA -fpreprocessed" } */ +/* { dg-final { scan-assembler "1.*DW_AT_inline" } } */ +#1 "test.h" +void f(void); +static int t() +{ + f(); +} +int q() +{ + t(); +}
dwarf2/dwarf-die7.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: trivial.c =================================================================== --- trivial.c (nonexistent) +++ trivial.c (revision 816) @@ -0,0 +1,6 @@ +/* { dg-do run } */ + +int main(void) +{ + return 0; +}
trivial.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: pr33316.c =================================================================== --- pr33316.c (nonexistent) +++ pr33316.c (revision 816) @@ -0,0 +1,15 @@ +/* PR debug/33316 */ + +int +foo (void *x, int y) +{ + const struct { int d[y]; } *a = x; + return a[0].d[0]; +} + +int +bar (void *x, int y) +{ + const struct S { int d[y]; } *a = x; + return a[0].d[0]; +}
pr33316.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2-1.c =================================================================== --- dwarf2-1.c (nonexistent) +++ dwarf2-1.c (revision 816) @@ -0,0 +1,11 @@ +/* { dg-do compile } */ + +/* Copyright (C) 2000 Free Software Foundation */ +/* Contributed by Alexandre Oliva */ + +static int foo () { return 0; } + +void bar () { + int foo (); + int foo (); +}
dwarf2-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2-2.c =================================================================== --- dwarf2-2.c (nonexistent) +++ dwarf2-2.c (revision 816) @@ -0,0 +1,17 @@ +/* { dg-do compile } */ + +/* Copyright (C) 2000 Free Software Foundation */ +/* Contributed by Alexandre Oliva */ + +inline double fx (double x) +{ + return 3 * x; +} + +main () +{ + double a = 0, fx (double), foo (); + fx (a); + if (a != 3) + foo (); +}
dwarf2-2.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: const-1.c =================================================================== --- const-1.c (nonexistent) +++ const-1.c (revision 816) @@ -0,0 +1,3 @@ +/* { dg-do compile } */ +typedef float FloatVect __attribute__((__vector_size__(16))); +static FloatVect Foo = { 250000000.0, 0.0, 0.0, 0.0 };
const-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2-3.c =================================================================== --- dwarf2-3.c (nonexistent) +++ dwarf2-3.c (revision 816) @@ -0,0 +1,13 @@ +/* Test -feliminate-dwarf2-dups */ +/* Contributed by Devang Patel */ +/* { dg-do compile } */ +/* { dg-options "-feliminate-dwarf2-dups" } */ + +#include "dwarf2-3.h" + +int main() +{ + struct point p; + p.x = 0; + p.y = 0; +}
dwarf2-3.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: const-2.c =================================================================== --- const-2.c (nonexistent) +++ const-2.c (revision 816) @@ -0,0 +1,2 @@ +/* { dg-do compile } */ +static __complex__ int x = 3.0;
const-2.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20011223-1.c =================================================================== --- 20011223-1.c (nonexistent) +++ 20011223-1.c (revision 816) @@ -0,0 +1,11 @@ +/* Origin: PR c/5163 from aj@suse.de. */ +/* { dg-do compile } */ + +extern int bar (int); + +int +foo (void) +{ + extern int bar (int); + return bar (5); +}
20011223-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: 20041023-1.c =================================================================== --- 20041023-1.c (nonexistent) +++ 20041023-1.c (revision 816) @@ -0,0 +1,13 @@ +/* { dg-do compile } */ + +static void +foo (unsigned char x) +{ + unsigned char a[5 + x]; +} + +void +bar (void) +{ + foo (80); +}
20041023-1.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: pr26881.c =================================================================== --- pr26881.c (nonexistent) +++ pr26881.c (revision 816) @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-options "-g -O0" } */ +int +main (int argc, char **argv) +{ + if (0) + { + static union + { + } + u; + typedef char tt; + static tt c[8]; + return c[0] == 0x01 && c[1] == 0x02; + } +}
pr26881.c Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: dwarf2-3.h =================================================================== --- dwarf2-3.h (nonexistent) +++ dwarf2-3.h (revision 816) @@ -0,0 +1,9 @@ +/* Test -feliminate-dwarf2-dups */ +/* Contributed by Devang Patel */ + +struct point +{ + int x; + int y; +}; +
dwarf2-3.h Property changes : Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.