[Bug c/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread ubizjak at gmail dot com


--- Comment #2 from ubizjak at gmail dot com  2010-05-11 06:32 ---
Confirmed with 4.6.0 mainline:

Program received signal SIGSEGV, Segmentation fault.
0x0056d5b8 in cfg_layout_finalize ()
at ../../gcc-svn/trunk/gcc/cfglayout.c:477
477   if (loc == prologue_locator || loc == epilogue_locator)

Backtrace:

#0  0x0056d5b8 in cfg_layout_finalize ()
at ../../gcc-svn/trunk/gcc/cfglayout.c:477
#1  0x0056de3a in outof_cfg_layout_mode ()
at ../../gcc-svn/trunk/gcc/cfglayout.c:477
#2  0x0071ca2e in execute_one_pass (pass=0x112c760)
at ../../gcc-svn/trunk/gcc/passes.c:293


-- 

ubizjak at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-11 06:32:26
   date||
   Target Milestone|--- |4.5.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug c/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread ubizjak at gmail dot com


--- Comment #3 from ubizjak at gmail dot com  2010-05-11 06:45 ---
Oops, wrong cut-n-paste. This is correct:

Program received signal SIGSEGV, Segmentation fault.
0x000120192df8 in fixup_reorder_chain ()
at ../../gcc-svn/trunk/gcc/cfglayout.c:889
889   if (bb-aux == e_fall-dest)
(gdb) bt
#0  0x000120192df8 in fixup_reorder_chain ()
at ../../gcc-svn/trunk/gcc/cfglayout.c:889
#1  cfg_layout_finalize () at ../../gcc-svn/trunk/gcc/cfglayout.c:1325
#2  0x000120193840 in outof_cfg_layout_mode ()
at ../../gcc-svn/trunk/gcc/cfglayout.c:361
#3  0x0001203b1ab0 in execute_one_pass (pass=0x1209e9c90)
at ../../gcc-svn/trunk/gcc/passes.c:1590
#4  0x0001203b1df4 in execute_pass_list (pass=0x1209e9c90)
at ../../gcc-svn/trunk/gcc/passes.c:1645


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug debug/44023] [4.6 Regression] -fcompare-debug failure (length) for alphaev67 target (bootstrap failure)

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #12 from jakub at gcc dot gnu dot org  2010-05-11 06:48 ---
Subject: Bug 44023

Author: jakub
Date: Tue May 11 06:48:15 2010
New Revision: 159254

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159254
Log:
PR debug/44023
* df-problems.c (struct dead_debug): Add to_rescan field.
(dead_debug_init): Clear to_rescan field.
(dead_debug_finish): Rescan all debug insns in to_rescan
bitmap and free the bitmap.
(dead_debug_insert_before): Instead of rescanning debug insns
immediately queue their rescanning until dead_debug_finish.
(df_note_bb_compute): After dead_debug_add do continue instead
of break.

* gcc.dg/pr44023.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/pr44023.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/df-problems.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44023



[Bug c++/43911] [4.4/4.5 Regression] g++ can't compile any even trivial c++ source: undefined reference to `_Unwind_GetIPInfo'

2010-05-11 Thread mikpe at it dot uu dot se


--- Comment #24 from mikpe at it dot uu dot se  2010-05-11 06:51 ---
Your gcc appears confused about whether to use the newer _Unwind_GetIPInfo() or
the older _Unwind_GetIP(). Most likely it's because you're building for uclibc
rather than glibc. I think you need to bisect between the last working gcc and
the first broken one to identify the responsible commit. Once that's done the
fix may be apparent.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43911



[Bug target/44072] New: Use 'add r0, 1' to replace 'cmp r0, -1' in thumb2

2010-05-11 Thread carrot at google dot com
Compile the following code with options -march=armv7-a -mthumb -Os

int bar5(int x)
{
  if (x == -1)
return 3;
  return 5;
}

GCC generates

cmp r0, #-1   // A
ite ne
movne   r0, #5
moveq   r0, #3
bx  lr

If we replace instruction A with 'add  r0, 1', it has the same effect, but with
smaller code size. Because cmp with negative immediate instruction is 32 bit.
Add with small positive immediate instruction is 16 bit.

In thumb1 we already have insn cbranchsi4_scratch to do this, we need a similar
part in thumb2.


-- 
   Summary: Use 'add r0, 1' to replace 'cmp r0, -1' in thumb2
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: carrot at google dot com
 GCC build triplet: i686-linux
  GCC host triplet: i686-linux
GCC target triplet: arm-eabi


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44072



[Bug debug/44023] [4.6 Regression] -fcompare-debug failure (length) for alphaev67 target (bootstrap failure)

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #13 from jakub at gcc dot gnu dot org  2010-05-11 07:11 ---
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44023



[Bug fortran/44064] [OOP] ICE with file containing two modules and one program

2010-05-11 Thread burnus at gcc dot gnu dot org


--- Comment #4 from burnus at gcc dot gnu dot org  2010-05-11 07:23 ---
(Cross reference: PR 44065 is the same, except using two files, which leads to
a linking error instead of an ICE.)

I get - as written at http://gcc.gnu.org/ml/fortran/2010-05/msg00099.html:

hjf.f90:37:0: internal compiler error: Segmentation fault

(37 is the XXX line.) valgrind shows:

==17205== Invalid read of size 8
==17205==at 0x53F166: gfc_delete_symtree (symbol.c:2374)
==17205==by 0x540176: gfc_undo_symbols (symbol.c:2845)
==17205==by 0x510786: decode_statement (parse.c:271)
==17205==by 0x511C8C: next_statement (parse.c:722)
==17205==by 0x5155DB: gfc_parse_file (parse.c:4220)
==17205==by 0x54CB27: gfc_be_parse_file (f95-lang.c:239)
==17205==by 0x8383A2: toplev_main (toplev.c:1053)
==17205==by 0x5EA1B7C: (below main) (in /lib64/libc-2.11.1.so)


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

   Keywords||ice-on-valid-code


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44064



[Bug target/44072] Use 'add r0, 1' to replace 'cmp r0, -1' in thumb2

2010-05-11 Thread ramana at gcc dot gnu dot org


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|normal  |enhancement
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||missed-optimization
   Last reconfirmed|-00-00 00:00:00 |2010-05-11 07:31:13
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44072



[Bug target/43725] Poor instructions selection, scheduling and registers allocation for ARM NEON intrinsics

2010-05-11 Thread ramana at gcc dot gnu dot org


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||missed-optimization
   Last reconfirmed|-00-00 00:00:00 |2010-05-11 07:35:23
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43725



[Bug target/43927] genautomata: undeclared unit or reservation `cortex_a9_}ult'

2010-05-11 Thread ramana at gcc dot gnu dot org


--- Comment #1 from ramana at gcc dot gnu dot org  2010-05-11 07:37 ---
Is this still an issue ? My armv5te box was bootstrapping without the issue you
mention in cortex-a9.md and there is a test result from an armv5te-linux-eabi
variant here.  

http://gcc.gnu.org/ml/gcc-testresults/2010-05/msg00953.html

cheers
Ramana


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43927



[Bug target/44073] New: x86 constants could be unduplicated

2010-05-11 Thread astrange at ithinksw dot com
void f1(int *a, int *b, int *c)
{
int d = 0xE0E0E0E0;

*a = *b = *c = d;
}

produces
_f1:
LFB0:
movl$-522133280, (%rdx)
movl$-522133280, (%rsi)
movl$-522133280, (%rdi)
ret

on x86-64 at -Os. It would save instruction space and probably not be any
slower to actually assign d to a register, but this is only done for 64-bit
constants.


-- 
   Summary: x86 constants could be unduplicated
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: astrange at ithinksw dot com
  GCC host triplet: x86_64-*-*


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44073



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread laurent at guerby dot net


--- Comment #3 from laurent at guerby dot net  2010-05-11 08:15 ---
Native bootstrap on mips-linux fails with the same ICE:

...
/n/42/guerby/build/./gcc/xgcc -B/n/42/guerby/build/./gcc/
-B/n/42/guerby/install-trunk-159243/mips64el-unknown-linux-gnu/bin/
-B/n/42/guerby/insta\
ll-trunk-159243/mips64el-unknown-linux-gnu/lib/ -isystem
/n/42/guerby/install-trunk-159243/mips64el-unknown-linux-gnu/include -isystem
/n/42/guerb\
y/install-trunk-159243/mips64el-unknown-linux-gnu/sys-include-g -O2
-minterlink-mips16 -mabi=32 -O2  -g -O2 -minterlink-mips16 -DIN_GCC   -W -\
Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
-Wold-style-definition  -isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT\
 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../../.././gcc
-I../../../../trunk/libgcc -I../../../../trunk/libgcc/.
-I../../../../trunk/libg\
cc/../gcc -I../../../../trunk/libgcc/../include  -DHAVE_CC_TLS  -o _mul_sf.o
-MT _mul_sf.o -MD -MP -MF _mul_sf.dep -DFINE_GRAINED_LIBRARIES -DL_mu\
l_sf -c ../../.././gcc/fp-bit.c -fvisibility=hidden -DHIDE_EXPORTS
../../.././gcc/fp-bit.c: In function '__mulsf3':
../../.././gcc/fp-bit.c:962:1: internal compiler error: in
cgraph_estimate_size_after_inlining, at ipa-inline.c:208
Please submit a full bug report,


-- 

laurent at guerby dot net changed:

   What|Removed |Added

 CC||laurent at guerby dot net
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-11 08:15:33
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug c/44074] New: Solaris 2.9 x86 Sun assembler doesn't like rep/lock prefixes on same line

2010-05-11 Thread jay dot krell at cornell dot edu
Solaris 2.9 x86 gcc 4.5.0 configure -without-gnu-as -with-as=/usr/ccs/bin/as


 = Assembly syntax errors in gcov.c whereever there is lock prefix.


I was actually looking for a problem with lock prefixes on 4.3 -- testing
4.5.0,
 found this instead, which is about about the same.

See:
 http://gcc.gnu.org/viewcvs?view=revisionrevision=127728
  for handling of the lock prefix in a separate instruction.

See:
http://developers.sun.com/sunstudio/downloads/ssx/express_Feb2008_readme.html
 You can now place lock/rep/repnz/repz/repe/repne prefix on the same line as
the following instruction.

But I'd like to stay compatible with the existing Sun assembler at
/usr/ccs/bin/as.

I considered just changing them all to \;, like there is rep\;ret, but
I noticed this:
sync.md:  lock{%;| }or{l}\t{$0, (%%esp)|DWORD PTR [esp], 0}


which appears to be an attempt to output Microsoft/Intel assembly, so I went
with the space usually and ; only for Darwin/Solaris, like how sync.md
was already using ; for Darwin.


Proposed patch below.
I'll open a bug. And test it on some machines maybe.
Any marked with TARGET_64BIT I left alone. Maybe that is too inconsistent
though.


diff -uw /home/jkrell/src/orig/gcc-4.5.0/gcc/config/i386/i386.c ./i386.c
--- /home/jkrell/src/orig/gcc-4.5.0/gcc/config/i386/i386.c  Wed Apr  7
23:58:27 2010
+++ ./i386.cTue May 11 10:01:54 2010
@@ -11896,11 +11896,10 @@
  return;

case ';':
-#if TARGET_MACHO
+ if (TARGET_MACHO || TARGET_SOLARIS)
  fputs ( ; , file);
-#else
+ else
  putc (' ', file);
-#endif
  return;

default:
diff -uw /home/jkrell/src/orig/gcc-4.5.0/gcc/config/i386/i386.h ./i386.h
--- /home/jkrell/src/orig/gcc-4.5.0/gcc/config/i386/i386.h  Wed Mar 24
21:44:48 2010
+++ ./i386.hTue May 11 09:59:01 2010
@@ -467,6 +467,9 @@
redefines this to 1.  */
 #define TARGET_MACHO 0

+/* Like TARGET_MACHO, redefined in sol2.h. */
+#define TARGET_SOLARIS 0
+
 /* Likewise, for the Windows 64-bit ABI.  */
 #define TARGET_64BIT_MS_ABI (TARGET_64BIT  ix86_cfun_abi () == MS_ABI)

diff -uw /home/jkrell/src/orig/gcc-4.5.0/gcc/config/i386/i386.md ./i386.md
--- /home/jkrell/src/orig/gcc-4.5.0/gcc/config/i386/i386.md Wed Mar 24
19:49:49 2010
+++ ./i386.md   Tue May 11 09:49:05 2010
@@ -13811,7 +13811,7 @@
   [(return)
(unspec [(const_int 0)] UNSPEC_REP)]
   reload_completed
-  rep\;ret
+  rep{%;| }ret
   [(set_attr length 2)
(set_attr atom_unit jeu)
(set_attr length_immediate 0)
@@ -17772,7 +17772,7 @@
(mem:BLK (match_dup 4)))
(use (match_dup 5))]
   !TARGET_64BIT
-  rep movs{l|d}
+  rep{%;| }movs{l|d}
   [(set_attr type str)
(set_attr prefix_rep 1)
(set_attr memory both)
@@ -17808,7 +17808,7 @@
(mem:BLK (match_dup 4)))
(use (match_dup 5))]
   !TARGET_64BIT
-  rep movsb
+  rep{%;| }movsb
   [(set_attr type str)
(set_attr prefix_rep 1)
(set_attr memory both)
@@ -18023,7 +18023,7 @@
(use (match_operand:SI 2 register_operand a))
(use (match_dup 4))]
   !TARGET_64BIT
-  rep stos{l|d}
+  rep{%;| }stos{l|d}
   [(set_attr type str)
(set_attr prefix_rep 1)
(set_attr memory store)
@@ -18056,7 +18056,7 @@
(use (match_operand:QI 2 register_operand a))
(use (match_dup 4))]
   !TARGET_64BIT
-  rep stosb
+  rep{%;| }stosb
   [(set_attr type str)
(set_attr prefix_rep 1)
(set_attr memory store)
@@ -18188,7 +18188,7 @@
(clobber (match_operand:SI 1 register_operand =D))
(clobber (match_operand:SI 2 register_operand =c))]
   !TARGET_64BIT
-  repz cmpsb
+  repz{%;| }cmpsb
   [(set_attr type str)
(set_attr mode QI)
(set_attr prefix_rep 1)])
@@ -18239,7 +18239,7 @@
(clobber (match_operand:SI 1 register_operand =D))
(clobber (match_operand:SI 2 register_operand =c))]
   !TARGET_64BIT
-  repz cmpsb
+  repz{%;| }cmpsb
   [(set_attr type str)
(set_attr mode QI)
(set_attr prefix_rep 1)])
@@ -18305,7 +18305,7 @@
(clobber (match_operand:SI 1 register_operand =D))
(clobber (reg:CC FLAGS_REG))]
   !TARGET_64BIT
-  repnz scasb
+  repnz{%;| }scasb
   [(set_attr type str)
(set_attr mode QI)
(set_attr prefix_rep 1)])
diff -uw /home/jkrell/src/orig/gcc-4.5.0/gcc/config/i386/sol2.h ./sol2.h
--- /home/jkrell/src/orig/gcc-4.5.0/gcc/config/i386/sol2.h  Wed Mar 31
11:03:29 2010
+++ ./sol2.hTue May 11 10:02:17 2010
@@ -172,3 +172,6 @@
 #define TF_SIZE 113

 #define MD_UNWIND_SUPPORT config/i386/sol2-unwind.h
+
+#undef  TARGET_SOLARIS
+#define TARGET_SOLARIS 1


 - Jay


-- 
   Summary: Solaris 2.9 x86 Sun assembler doesn't like rep/lock
prefixes on same line
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jay dot krell at cornell dot edu
GCC target triplet: i386-pc-solaris2.9


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44074

[Bug c/44074] Solaris 2.9 x86 Sun assembler doesn't like rep/lock prefixes on same line

2010-05-11 Thread ubizjak at gmail dot com


--- Comment #1 from ubizjak at gmail dot com  2010-05-11 08:26 ---
See the thread starting at [1].

[1] http://gcc.gnu.org/ml/gcc-patches/2010-05/msg00657.html


-- 

ubizjak at gmail dot com changed:

   What|Removed |Added

 CC||ro at gcc dot gnu dot org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-11 08:26:22
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44074



[Bug target/44073] x86 constants could be unduplicated

2010-05-11 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2010-05-11 08:42 ---
Confirmed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-11 08:42:34
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44073



[Bug c/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.5.1   |---


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-05-11 08:43 ---
*** Bug 44070 has been marked as a duplicate of this bug. ***


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||joel at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug tree-optimization/44070] [4.6 Regression] ICE in cgraph_estimate_size_after_inlining, at ipa-inline.c:208

2010-05-11 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2010-05-11 08:43 ---


*** This bug has been marked as a duplicate of 44063 ***


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44070



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug c++/44069] optimization bug initializing from cast array

2010-05-11 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2010-05-11 08:47 ---
I will have a look.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-05-11 08:47:26
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44069



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread laurent at guerby dot net


--- Comment #5 from laurent at guerby dot net  2010-05-11 08:47 ---
backtrace:

(gdb) bt
#0  internal_error (gmsgid=0x13b2f720 in %s, at %s:%d) at
../../trunk/gcc/diagnostic.c:755
#1  0x10837bd4 in fancy_abort (file=0x13cac5e8 ../../trunk/gcc/ipa-inline.c,
line=208, function=0x13cac5c0 cgraph_estimate_size_after_inlining) at
../../trunk/gcc/diagnostic.c:811
#2  0x12c6716c in cgraph_estimate_size_after_inlining (times=1, to=0x2adf2680,
what=0x2adf3560) at ../../trunk/gcc/ipa-inline.c:208
#3  0x12c6bf28 in cgraph_decide_inlining_incrementally (node=0x2adf2680,
mode=INLINE_SIZE_NORECURSIVE) at ../../trunk/gcc/ipa-inline.c:1587
#4  0x12c6c58c in cgraph_early_inlining () at ../../trunk/gcc/ipa-inline.c:1686
#5  0x111310a0 in execute_one_pass (pass=0x13eb8c70) at
../../trunk/gcc/passes.c:1590
#6  0x1113139c in execute_pass_list (pass=0x13eb8c70) at
../../trunk/gcc/passes.c:1645
#7  0x1112fca8 in do_per_function_toporder (callback=0x1113132c
execute_pass_list, data=0x13dcbf60) at ../../trunk/gcc/passes.c:1156
#8  0x111323e0 in execute_ipa_pass_list (pass=0x13dcbe48) at
../../trunk/gcc/passes.c:1930
#9  0x12be4e28 in ipa_passes () at ../../trunk/gcc/cgraphunit.c:1849
#10 0x12be50a8 in cgraph_optimize () at ../../trunk/gcc/cgraphunit.c:1918
#11 0x12be253c in cgraph_finalize_compilation_unit () at
../../trunk/gcc/cgraphunit.c:1166
#12 0x10126460 in c_write_global_declarations () at
../../trunk/gcc/c-decl.c:9573
#13 0x1165bb90 in compile_file () at ../../trunk/gcc/toplev.c:1065
#14 0x1165f14c in do_compile () at ../../trunk/gcc/toplev.c:2423
#15 0x1165f2ac in toplev_main (argc=68, argv=0x7fff6d44) at
../../trunk/gcc/toplev.c:2465
#16 0x103df340 in main (argc=68, argv=0x7fff6d44) at ../../trunk/gcc/main.c:35


-- 

laurent at guerby dot net changed:

   What|Removed |Added

   Target Milestone|4.6.0   |---


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread laurent at guerby dot net


--- Comment #6 from laurent at guerby dot net  2010-05-11 08:50 ---
(gdb) l
203 static int
204 cgraph_estimate_size_after_inlining (int times, struct cgraph_node *to,
205  struct cgraph_node *what)
206 {
207   int size = (what-global.size - inline_summary
(what)-size_inlining_benefit) * times + to-global.size;
208   gcc_assert (size = 0);
209   return size;
210 }
211 
212 /* Scale frequency of NODE edges by FREQ_SCALE and increase loop nest
(gdb) p size
$1 = -2
(gdb) p what-global.size
$2 = 1
(gdb) p times
$3 = 1
(gdb) p to-global.size
$4 = 0
(gdb) p inline_summary (what)-size_inlining_benefit
$5 = 3


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread hubicka at gcc dot gnu dot org


--- Comment #7 from hubicka at gcc dot gnu dot org  2010-05-11 08:52 ---
Can you please check if always_inline is involved in your testcase and if to
node has disreagard_inline_limits set.

Honza


-- 

hubicka at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug c/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread ubizjak at gmail dot com


--- Comment #4 from ubizjak at gmail dot com  2010-05-11 08:56 ---
I don't know why locations are all mixed up here, but this is correct place of
failure:

0x0056598a in fixup_reorder_chain ()
at ../../gcc-svn/trunk/gcc/cfglayout.c:866
866   || e_fall-dest == EXIT_BLOCK_PTR)
(gdb) l
861 }
862   else if (extract_asm_operands (PATTERN (bb_end_insn)) !=
NULL)
863 {
864   /* If the old fallthru is still next, nothing to do.  */
865   if (bb-aux == e_fall-dest
866   || e_fall-dest == EXIT_BLOCK_PTR)
867 continue;
868 
869   /* Otherwise we'll have to use the fallthru fixup below. 
*/
870 }


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug c/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #5 from jakub at gcc dot gnu dot org  2010-05-11 09:00 ---
I'd say the testcase is invalid, of course GCC must not ICE on it though,
but you can't expect it to do what you want.
I don't think we guarantee anywhere that the jump is exactly to the user
label provided, so you should jump to %l[f_yes] or %l[f_no], certainly never to
integer argument of f_yes or f_no.  I believe GCC must be allowed to jump
to some internal label elsewhere and execute some instructions before jumping
to the user label.  Otherwise we'd have to make all these edges from asm goto
abnormal.

That said, it doesn't make a difference on the trunk in this case, as you can
see by using jmp %l[f_yes] # %P0

FYI, on redhat/gcc-4_4-branch which has asm goto and __builtin_unreachable
backported the testcase works (the user labels (%P0 and %P1) are placed
non-sensically because of PR42739) when using the %l[f_yes]/%l[f_no] and the
testcase doesn't ICE.  With PR42739 the user labels make more sense, but with
__builtin_unreachable it ICEs, so I guess this PR is related to PR42739 (the
ICE part) and to SSA expand which creates wrong RTL (the rest).

OT, we have a bug in the documentation:

@smallexample
int frob(int x)
@{
  int y;
  asm goto (frob %%r5, %1; jc %l[error]; mov (%2), %%r5
: : r(x), r(y) : r5, memory : error);
  return y;
 error:
  return -1;
@}
@end smallexample

I guess that %1 should have been %0 and %2 should have been %1.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rth at gcc dot gnu dot org
   Target Milestone|--- |4.5.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug middle-end/43812] [4.5/4.6 Regression] compiling .cc file with -fwhole-program results in ICE, in ipcp_iterate_stage, at ipa-cp.c:760

2010-05-11 Thread jamborm at gcc dot gnu dot org


--- Comment #11 from jamborm at gcc dot gnu dot org  2010-05-11 09:06 
---
Subject: Bug 43812

Author: jamborm
Date: Tue May 11 09:05:59 2010
New Revision: 159265

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159265
Log:
2010-05-11  Martin Jambor  mjam...@suse.cz

PR middle-end/43812
* ipa.c (dissolve_same_comdat_group_list): New function.
(function_and_variable_visibility): Call
dissolve_same_comdat_group_list when comdat group contains external or
newly local nodes.
* cgraphunit.c (verify_cgraph_node): Verify that same_comdat_group
lists are circular and that they contain only DECL_ONE_ONLY nodes.

* testsuite/g++.dg/ipa/pr43812.C: New test.



Added:
branches/gcc-4_5-branch/gcc/testsuite/g++.dg/ipa/pr43812.C
Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/cgraphunit.c
branches/gcc-4_5-branch/gcc/ipa.c
branches/gcc-4_5-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43812



[Bug middle-end/43812] [4.5/4.6 Regression] compiling .cc file with -fwhole-program results in ICE, in ipcp_iterate_stage, at ipa-cp.c:760

2010-05-11 Thread jamborm at gcc dot gnu dot org


--- Comment #12 from jamborm at gcc dot gnu dot org  2010-05-11 09:13 
---
This is now fixed on both the trunk and the 4.5 branch.


-- 

jamborm at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43812



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread laurent at guerby dot net


--- Comment #8 from laurent at guerby dot net  2010-05-11 09:18 ---
(gdb) p *to
$4 = {decl = 0x2ad21800, callees = 0x2ac7e280, callers = 0x0, next =
0x2adf38e0, previous = 0x2adf2760, indirect_calls = 0x0, origin = 0x0, nested =
0x0, next_nested = 0x0, next_needed = 0x0, next_sibling_clone = 0x0, 
  prev_sibling_clone = 0x0, clones = 0x0, clone_of = 0x0, same_body = 0x0,
same_comdat_group = 0x0, call_site_hash = 0x0, aux = 0x0,
ipa_transforms_to_apply = 0x0, ref_list = {references = 0x0, refering = 0x0},
local = {
lto_file_data = 0x0, inline_summary = {estimated_self_stack_size = 56,
self_size = 16, size_inlining_benefit = 4, self_time = 52,
time_inlining_benefit = 13}, local = 0, externally_visible = 1, finalized = 1,
inlinable = 1, 
disregard_inline_limits = 0, redefined_extern_inline = 0, vtable_method =
0}, global = {estimated_stack_size = 56, stack_frame_offset = 0, inlined_to =
0x0, time = 0, size = 0, estimated_growth = -2147483648}, rtl = {
preferred_incoming_stack_boundary = 0}, clone = {tree_map = 0x0,
args_to_skip = 0x0, combined_args_to_skip = 0x0}, thunk = {fixed_offset = 0,
virtual_value = 0, alias = 0x0, this_adjusting = 0 '\0', virtual_offset_p = 0
'\0', 
thunk_p = 0 '\0'}, count = 0, uid = 7, order = 7, pid = 7, needed = 1,
address_taken = 0, abstract_and_needed = 0, reachable = 1,
reachable_from_other_partition = 0, lowered = 1, analyzed = 1,
in_other_partition = 0, process = 0, 
  alias = 0, finalized_by_frontend = 1, same_body_alias = 0, frequency =
NODE_FREQUENCY_NORMAL}


-- 

laurent at guerby dot net changed:

   What|Removed |Added

   Target Milestone|4.6.0   |---


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread laurent at guerby dot net


--- Comment #9 from laurent at guerby dot net  2010-05-11 09:23 ---
For __always_inline the answer seems to be yes if I don't misinterpret the
source:

 res = _fpmul_parts (a, b, tmp);

static inline __attribute__ ((__always_inline__)) const fp_number_type *
_fpmul_parts ( fp_number_type *  a, 
   fp_number_type *  b, 
   fp_number_type * tmp)
{


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug c/43999] Gcc (lib1funcs.asm) doesn't build on ARM/Thumb2

2010-05-11 Thread ramana at gcc dot gnu dot org


--- Comment #2 from ramana at gcc dot gnu dot org  2010-05-11 09:28 ---
How did you configure your tools in  ? Have you considered using the --with-cpu
and --with-mode options while building your tools i.e. --with-cpu=cortex-m3
--with-mode=thumb.

Ramana


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43999



[Bug target/44075] New: __builtin_eh_return miscompiled

2010-05-11 Thread amodra at gmail dot com
At any optimisation level other than -O0, it seems that __builtin_eh_return
loses its handler arg.  For -m32 -O2 -S the following:

long offset;
void *handler;

void foo (void)
{
  __builtin_eh_return (offset, handler);
}

compiles to:

foo:
stwu 1,-32(1)
lis 9,off...@ha
mflr 0
stw 0,36(1)
stw 3,16(1)
stw 4,20(1)
stw 5,24(1)
stw 6,28(1)
lwz 10,off...@l(9)
lwz 0,36(1)
lwz 3,16(1)
lwz 4,20(1)
lwz 5,24(1)
mtlr 0
lwz 6,28(1)
addi 1,1,32
add 1,1,10
blr


-- 
   Summary: __builtin_eh_return miscompiled
   Product: gcc
   Version: 4.4.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: amodra at gmail dot com
GCC target triplet: powerpc*-*-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44075



[Bug c/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #6 from jakub at gcc dot gnu dot org  2010-05-11 10:01 ---
Created an attachment (id=20625)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20625action=view)
partial fix of the ICE

The ICE is when going out of cfglayout mode.
When going into the cfglayout mode try_optimize_cfg deletes the following empty
block with no successors:
1988  /* Delete trivially dead basic blocks.  This is either
1989 blocks with no predecessors, or empty blocks with no
1990 successors.  However if the empty block with no
1991 successors is the successor of the ENTRY_BLOCK, it is
1992 kept.  This ensures that the ENTRY_BLOCK will have a
1993 successor which is a precondition for many RTL
1994 passes.  Empty blocks may result from expanding
1995 __builtin_unreachable ().  */
1996  if (EDGE_COUNT (b-preds) == 0
1997  || (EDGE_COUNT (b-succs) == 0
...

It is fine when asm doesn't have a fallthru edge IMHO because of this, so the
patch just handles that case.  Unfortunately, we ICE with this patch shortly
after during cfg verification once we went out of the cfglayout mode.
The problem is that the empty bb was deleted in cfglayout mode and its
il.footer
(which contained a BARRIER) got dropped on the floor.  I guess if there is a
predecessor and its fallthrough edge goes to the empty bb its il.footer
could be moved over to the predecessor.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug driver/44076] New: -MT target behaves different as -MTtarget (w/o space)

2010-05-11 Thread christian dot eggers at kathrein dot de
 cat test.c
#include test.h

int main(void)
{
return 0;
}
/* EOF */

 gcc -c -o test.o -MMD -MT other.c test.c
 cat test.d 
other.c: test.c test.h
== seems to be correct

 gcc -c -o test.o -MMD -MTother.c test.c
 cat test.d 
other.c test.o: test.c test.h
== seems to be wrong

-MTfile should either behave equal as -MT file or be rejected.


-- 
   Summary: -MT target behaves different as -MTtarget (w/o
space)
   Product: gcc
   Version: 4.4.3
Status: UNCONFIRMED
  Severity: minor
  Priority: P3
 Component: driver
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: christian dot eggers at kathrein dot de
 GCC build triplet: don't care
  GCC host triplet: don't care
GCC target triplet: don't care


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44076



[Bug c++/40512] Compilation stops on valid code with ICE

2010-05-11 Thread paolo dot carlini at oracle dot com


--- Comment #4 from paolo dot carlini at oracle dot com  2010-05-11 10:11 
---
I think this can be safely closed as fixed for 4.5.0.


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to work||4.5.0 4.5.1 4.6.0
 Resolution||FIXED
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40512



[Bug middle-end/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||matz at gcc dot gnu dot org
  Component|c   |middle-end
   Target Milestone|4.5.1   |---


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug middle-end/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #7 from jakub at gcc dot gnu dot org  2010-05-11 10:20 ---
Created an attachment (id=20626)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20626action=view)
gcc46-pr44071.patch

Untested fix for the ICE part (and, with __builtin_unreachable the generated
code is even correct after fixing the inline asm pattern).  Perhaps the
try_optimize_cfg change is too ugly though.

CCing Michael for SSA expansion part.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

  Attachment #20625|0   |1
is obsolete||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug libstdc++/43259] ext/profile/all.cc fails on Solaris

2010-05-11 Thread paolo at gcc dot gnu dot org


--- Comment #25 from paolo at gcc dot gnu dot org  2010-05-11 10:22 ---
Subject: Bug 43259

Author: paolo
Date: Tue May 11 10:22:18 2010
New Revision: 159268

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159268
Log:
2010-05-11  Silvius Rus  silvius@gmail.com

PR libstdc++/43259
* include/profile/impl/profiler_algos.h: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* include/profile/impl/profiler.h
(_GLIBCXX_PROFILE_DEFINE_UNINIT_DATA): Add.
* include/profile/impl/profiler_trace.h
(__mutex_t, __lock, __unlock): Remove.
(__lock_object_table, __lock_stack_table): Remove. Replace uses with
calls to __gnu_cxx::__mutex::lock.
(__unlock_object_table, __unlock_stack_table): Remove. Replace uses
with calls to __gnu_cxx::__mutex::unlock.
(__warn, __cost_factor_writer, __cost_factor_setter): Add.
* testsuite/ext/profile/profiler_algos.cc: New.

Added:
trunk/libstdc++-v3/include/profile/impl/profiler_algos.h
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/Makefile.am
trunk/libstdc++-v3/include/Makefile.in
trunk/libstdc++-v3/include/profile/impl/profiler.h
trunk/libstdc++-v3/include/profile/impl/profiler_trace.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43259



[Bug libstdc++/43259] ext/profile/all.cc fails on Solaris

2010-05-11 Thread paolo at gcc dot gnu dot org


--- Comment #26 from paolo at gcc dot gnu dot org  2010-05-11 10:23 ---
Subject: Bug 43259

Author: paolo
Date: Tue May 11 10:23:20 2010
New Revision: 159269

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159269
Log:
2010-05-11  Silvius Rus  silvius@gmail.com

PR libstdc++/43259
* include/profile/impl/profiler_algos.h: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* include/profile/impl/profiler.h
(_GLIBCXX_PROFILE_DEFINE_UNINIT_DATA): Add.
* include/profile/impl/profiler_trace.h
(__mutex_t, __lock, __unlock): Remove.
(__lock_object_table, __lock_stack_table): Remove. Replace uses with
calls to __gnu_cxx::__mutex::lock.
(__unlock_object_table, __unlock_stack_table): Remove. Replace uses
with calls to __gnu_cxx::__mutex::unlock.
(__warn, __cost_factor_writer, __cost_factor_setter): Add.
* testsuite/ext/profile/profiler_algos.cc: New.

Added:
trunk/libstdc++-v3/testsuite/ext/profile/profiler_algos.cc


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43259



[Bug target/44073] x86 constants could be unduplicated

2010-05-11 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-05-11 10:24 ---
There is a GIMPLE uncprop pass for this. Could you verify that after this pass
there is just one assignment of the constant to an SSA_NAME? If so, the problem
is in the RTL CPROP pass, otherwise we have to look at the GIMPLE pass first.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44073



[Bug target/44073] x86 constants could be unduplicated

2010-05-11 Thread astrange at ithinksw dot com


--- Comment #3 from astrange at ithinksw dot com  2010-05-11 10:36 ---
It's propagated by vrp1, and then nothing removes it again. tree-uncprop
doesn't change it - it looks like it doesn't have anything to handle this,
actually.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44073



[Bug c++/43911] [4.4/4.5 Regression] g++ can't compile any even trivial c++ source: undefined reference to `_Unwind_GetIPInfo'

2010-05-11 Thread dougmencken at gmail dot com


--- Comment #25 from dougmencken at gmail dot com  2010-05-11 11:31 ---
(In reply to comment #24)
Okay, I'm ready to bisect. I know it would take weeks. I cloned gcc repo using
git clone git://git.infradead.org/toolchain/gcc.git gcc-git , but this repo
doesn't use tags (i.e. I can't specify that 4.4.2 is good and 4.4.3 is bad).
Can you please tell me which sha1 is for 4.4.2 and which one is for 4.4.3?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43911



[Bug c/44077] New: -Wtype-limits fails to warn for _Bool comparisons

2010-05-11 Thread sirl at gcc dot gnu dot org
For the small testcase below gcc-4.4.3 neither warns about the initialization
of var1 nor about the comparison against an integer. Nevertheless the
comparison
is optimized away.

// gcc -O2 -Wtype-limits
_Bool var1 = 3;
int test(void)
{
  if (var1 == 3)
return 1;
  return 0;
}

This maybe related to http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34455


-- 
   Summary: -Wtype-limits fails to warn for _Bool comparisons
   Product: gcc
   Version: 4.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sirl at gcc dot gnu dot org
 GCC build triplet: i686-redhat-linux
  GCC host triplet: i686-redhat-linux
GCC target triplet: i686-redhat-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44077



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread joel at gcc dot gnu dot org


--- Comment #10 from joel at gcc dot gnu dot org  2010-05-11 11:50 ---
FWIW also seen on sparc-rtems, powerpc-rtems, and i386-rtems.

This did not happen building mips-rtems.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug target/43927] genautomata: undeclared unit or reservation `cortex_a9_}ult'

2010-05-11 Thread dave at hiauly1 dot hia dot nrc dot ca


--- Comment #2 from dave at hiauly1 dot hia dot nrc dot ca  2010-05-11 
12:05 ---
Subject: Re:  genautomata: undeclared unit or reservation `cortex_a9_}ult'

 Is this still an issue ? My armv5te box was bootstrapping without the issue 
 you
 mention in cortex-a9.md and there is a test result from an armv5te-linux-eabi
 variant here.  

Did the typo in the machine definition get fixed?  I can check when I
get to my office later today.

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43927



[Bug middle-end/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #8 from jakub at gcc dot gnu dot org  2010-05-11 12:18 ---
Created an attachment (id=20627)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20627action=view)
gcc46-pr44071.patch

Updated patch that fixes the rest of the issues.  The reason why testcase
without __builtin_unreachable didn't work is that then one of the labels in the
asm goto happened to be the same as fallthru bb label.  When gcc tried to
insert queued insns on that edge, it saw it is a fallthru edge and thus didn't
adjust the asm goto.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

  Attachment #20626|0   |1
is obsolete||
 AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug c++/44062] (void)var; doesn't prevent 'set but not used' warning

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2010-05-11 12:48 ---
Created an attachment (id=20628)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20628action=view)
gcc46-pr44062-c++.patch

C++ change that fixes this.
It treats all (void) / static_cast void conversions and the implicit
conversion thereof on lhs of compound expr as when a decl etc. is appearing
alone in a statement, with the difference that for say
(a, b++, c = d);
we don't mark c DECL_READ_P - mark_exp_read normally handles MODIFY_EXPR for
cases like z = (c = d); where we want to set DECL_READ_P on c.  But in this
case of a cast to void/decl/handled component alone in a stmt or comma
expression lhs, we want to mark everything but MODIFY_EXPR.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44062



[Bug middle-end/44078] New: [4.6 regression] FAIL: gcc.dg/tree-ssa/prefetch-7.c

2010-05-11 Thread hjl dot tools at gmail dot com
On Linux/ia32, revision 159262 gave:

FAIL: gcc.dg/tree-ssa/prefetch-7.c scan-tree-dump-times aprefetch nontemporal
store 2

Revision 159255 is OK. It may be caused by revisions 159256/159257:

http://gcc.gnu.org/ml/gcc-cvs/2010-05/msg00307.html
http://gcc.gnu.org/ml/gcc-cvs/2010-05/msg00308.html


-- 
   Summary: [4.6 regression] FAIL: gcc.dg/tree-ssa/prefetch-7.c
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl dot tools at gmail dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44078



[Bug middle-end/44078] [4.6 regression] FAIL: gcc.dg/tree-ssa/prefetch-7.c

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44078



[Bug debug/42278] [4.4/4.5/4.6 regression] incorrect dwarf data gcc-4.4.2

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|[4.4, 4.5, 4.6 regression]  |[4.4/4.5/4.6 regression]
   |incorrect dwarf data gcc-   |incorrect dwarf data gcc-
   |4.4.2   |4.4.2
   Target Milestone|--- |4.4.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42278



[Bug objc++/43689] [4.6 Regression] const-str-5/6 fails

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43689



[Bug libstdc++/43820] [4.4/4.5/4.6 Regression] auto_ptr used with incomplete type no longer triggers warning

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.4.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43820



[Bug inline-asm/44018] [4.5/4.6 Regression] Using cpuid.h, can't find a register in class 'CLOBBERED_REGS' while reloading 'asm'

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.5.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44018



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug target/43810] [4.5 Regression] linking results in undefined references to _savegpr_* _restgpr_*_x

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.5.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43810



[Bug rtl-optimization/41064] [4.4 Regression]: build breakage for cris-elf building newlib, ICE in extract_insn, from r150726

2010-05-11 Thread rguenth at gcc dot gnu dot org


--- Comment #7 from rguenth at gcc dot gnu dot org  2010-05-11 13:38 ---
Not sure what's the state here.  Is 4.4 broken now?


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|REOPENED|WAITING
   Target Milestone|--- |4.4.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41064



[Bug debug/43190] [4.3/4.4 Regression] Used pointer typedefs eliminated from debug info

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.3.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43190



[Bug tree-optimization/43416] [4.4 regression] internal compiler error in C++ template instantiations at -O3

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.4.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43416



[Bug bootstrap/38591] [4.3 regression] erratic comparison failures on very fast machines

2010-05-11 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.3.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38591



[Bug middle-end/44078] [4.6 regression] FAIL: gcc.dg/tree-ssa/prefetch-7.c

2010-05-11 Thread borntraeger at de dot ibm dot com


--- Comment #1 from borntraeger at de dot ibm dot com  2010-05-11 13:43 
---
From a first look this looks like that the test case scans for
nontemporal store which is also emitted by the new debug messages:

-return false;
+{
+  if (dump_file  (dump_flags  TDF_DETAILS))
+fprintf (dump_file, Ignoring nontemporal store %p\n, (void *) ref);
+  return false;
+}

I will check if that is the problem. If yes I will probably fix the testcase.

Christian


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44078



[Bug libgomp/39098] FAIL: libgomp.fortran/reduction3.f90

2010-05-11 Thread danglin at gcc dot gnu dot org


--- Comment #6 from danglin at gcc dot gnu dot org  2010-05-11 13:46 ---
I have rechecked 4.4 and 4.5 and the test is no longer failing.


-- 

danglin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39098



[Bug rtl-optimization/41064] [4.4 Regression]: build breakage for cris-elf building newlib, ICE in extract_insn, from r150726

2010-05-11 Thread uweigand at gcc dot gnu dot org


--- Comment #8 from uweigand at gcc dot gnu dot org  2010-05-11 13:57 
---
(In reply to comment #7)
 Not sure what's the state here.  Is 4.4 broken now?

Here's the status as far as I know.  I had checked in a patch:
http://gcc.gnu.org/ml/gcc-patches/2009-08/msg00254.html
to fix the problem PR 37053.  This patch introduced the regression
described in the current problem, fixed by Hans-Peter's patch above.

Now, *both* my PR 37053 patch and Hans-Peter's patch were checked in
only to mainline (i.e. GCC 4.5); GCC 4.4 should not be affected either
way.  However, this means the original problem in PR 37053 is still
present in GCC 4.4.  And in fact, it may well be the case that the
problem described in PR 40414 is actually a duplicate of PR 37053.

In this case, I guess the way to go would be to apply *both* my patch
and Hans-Peter's patch to the 4.4 branch ...


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41064



[Bug middle-end/44078] [4.6 regression] FAIL: gcc.dg/tree-ssa/prefetch-7.c

2010-05-11 Thread borntraeger at de dot ibm dot com


--- Comment #2 from borntraeger at de dot ibm dot com  2010-05-11 13:57 
---
Created an attachment (id=20629)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20629action=view)
Testfix for the prefetch-7.c testcase

There always was
fprintf (dump_file, Marked reference %p as a nontemporal store.\n,
in the old code.

r159256 now adds
fprintf (dump_file, Ignoring nontemporal store %p\n, (void *) ref);

The testcase matches both messages, but it should only match the first one.

So a potential fix might look like like the attachement. Can you confirm that
this patch fixes the testcase on your system?

Christian


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44078



[Bug bootstrap/44079] New: Bootstrap error about elf_getshdrstrndx when configure script does not detect elf_getshdrstrndx

2010-05-11 Thread soni dot sandeepb at gmail dot com
Configure Script does not detect elf_getshdrstrndx

checking for elf_getshdrstrndx... no

But still tries to use it in stage 2 bootstrap and gives error,

../../trunk/gcc/lto/lto-elf.c: In function 'validate_file' :
../../trunk/gcc/lto/lto-elf.c:539:3:error: implicit declaration of
function 'elf_getshdrstrndx' [-Werror=implicit-function-declaration]


-- 
   Summary: Bootstrap error about elf_getshdrstrndx when configure
script does not detect elf_getshdrstrndx
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: soni dot sandeepb at gmail dot com
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44079



[Bug other/44080] New: Call GNU ld with -O1

2010-05-11 Thread marc dot glisse at normalesup dot org
When gcc is called with -O3, it could add -O1 to the options it passes to the
linker, when it knows that it is GNU ld. For now this is only useful with
-shared, but I don't see any reason not to also pass it without -shared.

Reference:
http://gcc.gnu.org/ml/gcc/2010-05/msg00193.html


-- 
   Summary: Call GNU ld with -O1
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: enhancement
  Priority: P3
 Component: other
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: marc dot glisse at normalesup dot org
  GCC host triplet: x86_64-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44080



[Bug c/44081] New: Incorrect nonnull assumed in code generation

2010-05-11 Thread hv at crypt dot org
zen% /opt/gcc-4.5.0/bin/gcc -v
Using built-in specs.
COLLECT_GCC=/opt/gcc-4.5.0/bin/gcc
COLLECT_LTO_WRAPPER=/opt/gcc-4.5.0/libexec/gcc/i686-pc-linux-gnu/4.5.0/lto-wrapper
Target: i686-pc-linux-gnu
Configured with: /src/package/lang/other/gcc-4.5.0/configure
--prefix=/opt/gcc-4.5.0 --with-gmp=/opt/gmp-4.2.2 --with-mpfr=/opt/mpfr-2.4.1
--with-mpc=/opt/mpc-0.8.1
Thread model: posix
gcc version 4.5.0 (GCC) 
zen% 

test.S is generated from 'gcc -S -O2 -fno-inline -Wall gcctest2.c -o
gcctest2.S' using gcc-4.5.0. The assembler shows that the function test() does
not check if its third parameter o2 is NULL, but one path in the calling
function peep() does not guarantee that it is nonnull.

I was unable to reproduce this with gcc-4.4.3; I was also unable to reproduce
it without the '__attribute__((nonnull(2)))' declaration - it seems possible
that in some circumstances the nonnull may be getting applied to the wrong
parameter, but that may be a red herring.

This is cut down from a problem found by Alex Hunsaker compiling perl-5.12.1,
where the erroneous generated code caused a segfault
http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2010-05/msg00316.html.


-- 
   Summary: Incorrect nonnull assumed in code generation
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hv at crypt dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44081



[Bug c/44082] New: AVR watchdog resets the core during initialization

2010-05-11 Thread j-etienne at users dot sourceforge dot net
After watchdog reset (for example, to enter reprogramming), the AVR core
restarts with watchdog enabled, contrary to a cold start after power on.
The C program is not given an opportunity to disable or reset the watchdog
before main ; and when the data and/or bss section is large enough, the
watchdog triggers a CPU reset during __do_copy_data or __do_clear_bss, and the
main therefore never starts.

To avoid this, I've added watchdog reset instructions in the __do_copy_data and
__do_clear_bss loops. Here is a patch :

*** gcc-4.5-20100311.orig/gcc/config/avr/libgcc.S   2009-05-23
09:16:07.0 +0200
--- gcc-4.5-20100311/gcc/config/avr/libgcc.S2010-05-11 16:30:29.0
+0200
***
*** 710,715 
--- 710,716 
out __RAMPZ__, r16
rjmp.L__do_copy_data_start
  .L__do_copy_data_loop:
+wdr /* Avoid watchdog reset if active */
elpmr0, Z+
st  X+, r0
  .L__do_copy_data_start:
***
*** 728,733 
--- 729,735 
out __RAMPZ__, r16
rjmp.L__do_copy_data_start
  .L__do_copy_data_loop:
+wdr /* Avoid watchdog reset if active */
elpm
st  X+, r0
adiwr30, 1
***
*** 744,749 
--- 746,752 
ldi r31, hi8(__data_load_start)
rjmp.L__do_copy_data_start
  .L__do_copy_data_loop:
+wdr /* Avoid watchdog reset if active */
  #if defined (__AVR_HAVE_LPMX__)
lpm r0, Z+
  #else
***
*** 769,774 
--- 772,778 
ldi r27, hi8(__bss_start)
rjmp.do_clear_bss_start
  .do_clear_bss_loop:
+wdr /* Avoid watchdog reset if active */
st  X+, __zero_reg__
  .do_clear_bss_start:
cpi r26, lo8(__bss_end)


-- 
   Summary: AVR watchdog resets the core during initialization
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: j-etienne at users dot sourceforge dot net
 GCC build triplet: x86_64-apple-darwin10.2.0
  GCC host triplet: x86_64-apple-darwin10.2.0
GCC target triplet: avr-unknown-none


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44082



[Bug c/44081] Incorrect nonnull assumed in code generation

2010-05-11 Thread hv at crypt dot org


--- Comment #1 from hv at crypt dot org  2010-05-11 14:41 ---
Created an attachment (id=20630)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20630action=view)
C source code


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44081



[Bug c/44081] Incorrect nonnull assumed in code generation

2010-05-11 Thread hv at crypt dot org


--- Comment #2 from hv at crypt dot org  2010-05-11 14:41 ---
Created an attachment (id=20631)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20631action=view)
Generated assembly code, with annotation


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44081



[Bug debug/42278] [4.4/4.5/4.6 regression] incorrect dwarf data gcc-4.4.2

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #2 from jakub at gcc dot gnu dot org  2010-05-11 14:43 ---
Created an attachment (id=20632)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20632action=view)
gcc46-pr42278.patch

Untested patch.  I'll need to see whether we don't generate too many
__unknown__ names with it (and whether other types wouldn't need similar
treatment like sizetype).


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42278



[Bug c/44083] New: gcc v 4.2.2: gcc -H gives segmentation violation

2010-05-11 Thread rogier dot wester at asml dot com
below you find the information on my host system and the used gcc command. 
I tried to use a pre-compiled header file. There is one file that includes two
include files which both include another (the same) header file. I wanted to
see whether the pre-compiled header file was taken from both include files and
used the -H option to see this. In that case the compiled gave a segmentation
violation after dumping the information I was looking for, see log below.

Not sure yet how I attach the files to this bug report yet, my first time
filing, hope I will get that option still.

nlvdhw99:~ % uname -X
System = SunOS
Node = nlvdhw99
Release = 5.8
KernelID = Generic_117350-52
Machine = sun4u
BusType = unknown
Serial = unknown
Users = unknown
OEM# = 0
Origin# = 1
NumCPU = 2

nlvdhw99:~ % gcc -H -v aap.c
Using built-in specs.
Target: sparc-sun-solaris2.8
Configured with: ../configure --prefix=/cadappl/gcc/4.4.2/gcc
--enable-languages=c,c++
--with-gmp-lib=/shared/caddev/wblanken/5.8/gcc_4.4.2/gcc/4.4.2/SunOS_5.8/cadenv_home/cadlib:/usr/lib:/usr/ccs/lib:/usr/dt/lib:/usr/openwin/lib
--with-gmp-include=/shared/caddev/wblanken/5.8/gcc_4.4.2/gcc/4.4.2/SunOS_5.8/cadenv_home/cadinc
--with-mpfr-lib=/shared/caddev/wblanken/5.8/gcc_4.4.2/gcc/4.4.2/SunOS_5.8/cadenv_home/cadlib:/usr/lib:/usr/ccs/lib:/usr/dt/lib:/usr/openwin/lib
--with-mpfr-include=/shared/caddev/wblanken/5.8/gcc_4.4.2/gcc/4.4.2/SunOS_5.8/cadenv_home/cadinc
--without-gnu-as --with-ld=/usr/ccs/bin/as --without-gnu-ld
--with-ld=/usr/ccs/bin/ld --disable-nls
Thread model: posix
gcc version 4.4.2 (GCC) 
COLLECT_GCC_OPTIONS='-H' '-v' '-mcpu=v9'
 /home/cadappl/gcc/4.4.2/gcc/bin/../libexec/gcc/sparc-sun-solaris2.8/4.4.2/cc1
-quiet -v -iprefix
/home/cadappl/gcc/4.4.2/gcc/bin/../lib/gcc/sparc-sun-solaris2.8/4.4.2/ -H
-D__sparcv8 aap.c -quiet -dumpbase aap.c -mcpu=v9 -auxbase aap -version -o
/tmp/ccIk0iI1.s
ignoring nonexistent directory
/home/cadappl/gcc/4.4.2/gcc/bin/../lib/gcc/sparc-sun-solaris2.8/4.4.2/../../../../sparc-sun-solaris2.8/include
ignoring duplicate directory
/home/cadappl/gcc/4.4.2/gcc/bin/../lib/gcc/../../lib/gcc/sparc-sun-solaris2.8/4.4.2/include
ignoring duplicate directory
/home/cadappl/gcc/4.4.2/gcc/bin/../lib/gcc/../../lib/gcc/sparc-sun-solaris2.8/4.4.2/include-fixed
ignoring nonexistent directory
/home/cadappl/gcc/4.4.2/gcc/bin/../lib/gcc/../../lib/gcc/sparc-sun-solaris2.8/4.4.2/../../../../sparc-sun-solaris2.8/include
#include ... search starts here:
#include ... search starts here:
 /home/cadappl/gcc/4.4.2/gcc/bin/../lib/gcc/sparc-sun-solaris2.8/4.4.2/include

/home/cadappl/gcc/4.4.2/gcc/bin/../lib/gcc/sparc-sun-solaris2.8/4.4.2/include-fixed
 /usr/local/include
 /home/cadappl/gcc/4.4.2/gcc/bin/../lib/gcc/../../include
 /usr/include
End of search list.
GNU C (GCC) version 4.4.2 (sparc-sun-solaris2.8)
compiled by GNU C version 4.4.2, GMP version 4.3.2, MPFR version 2.4.2.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 23aa22944bc3d068ec8ac37d8068444b
. noot.h
.! aap.h.gch
 noot.h
 mies.h
. aap.h
mies.h:15: internal compiler error: Segmentation Fault
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.


-- 
   Summary: gcc v 4.2.2: gcc -H gives segmentation violation
   Product: gcc
   Version: 4.4.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rogier dot wester at asml dot com
  GCC host triplet: Sun
GCC target triplet: Sun


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44083



[Bug c/44081] Incorrect nonnull assumed in code generation

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2010-05-11 14:51 ---
That's a user bug.  You shouldn't pass NULL to arguments declared nonnull.
To quote gcc documentation:
The compiler may also choose to make optimizations based
on the knowledge that certain function arguments will not be null.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44081



[Bug c/44083] gcc v 4.2.2: gcc -H gives segmentation violation

2010-05-11 Thread rogier dot wester at asml dot com


--- Comment #1 from rogier dot wester at asml dot com  2010-05-11 14:53 
---
Created an attachment (id=20633)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20633action=view)
source file including 2 include files


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44083



[Bug c/44083] gcc v 4.2.2: gcc -H gives segmentation violation

2010-05-11 Thread rogier dot wester at asml dot com


--- Comment #2 from rogier dot wester at asml dot com  2010-05-11 14:54 
---
Created an attachment (id=20634)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20634action=view)
the original include file (not precompiled)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44083



[Bug c/44083] gcc v 4.2.2: gcc -H gives segmentation violation

2010-05-11 Thread rogier dot wester at asml dot com


--- Comment #3 from rogier dot wester at asml dot com  2010-05-11 14:54 
---
Created an attachment (id=20635)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20635action=view)
the precompiled include file


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44083



[Bug c/44083] gcc v 4.2.2: gcc -H gives segmentation violation

2010-05-11 Thread rogier dot wester at asml dot com


--- Comment #4 from rogier dot wester at asml dot com  2010-05-11 14:55 
---
Created an attachment (id=20636)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20636action=view)
an include file including the first include file


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44083



[Bug c/44083] gcc v 4.2.2: gcc -H gives segmentation violation

2010-05-11 Thread rogier dot wester at asml dot com


--- Comment #5 from rogier dot wester at asml dot com  2010-05-11 14:55 
---
Created an attachment (id=20637)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20637action=view)
a second include including the first include file


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44083



[Bug tree-optimization/44063] [4.6 Regression]: build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline

2010-05-11 Thread hubicka at gcc dot gnu dot org


--- Comment #11 from hubicka at gcc dot gnu dot org  2010-05-11 15:16 
---
Subject: Bug 44063

Author: hubicka
Date: Tue May 11 15:15:48 2010
New Revision: 159273

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159273
Log:

PR tree-optimize/44063
* ipa-inline.c (cgraph_edge_badness): Move always inlines to top of
queue.
(cgraph_decide_inlining_of_small_function): Skip check when disrgarding
limits.
(estimate_function_body_sizes): Compute sizes even when disregarding.
* gcc.c-torture/compile/pr44063.c: New testcase.

Added:
trunk/gcc/testsuite/gcc.c-torture/compile/pr44063.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa-inline.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44063



[Bug c/44081] Incorrect nonnull assumed in code generation

2010-05-11 Thread hv at crypt dot org


--- Comment #4 from hv at crypt dot org  2010-05-11 15:38 ---
(In reply to comment #3)
 That's a user bug.  You shouldn't pass NULL to arguments declared nonnull.
 To quote gcc documentation:
 The compiler may also choose to make optimizations based
 on the knowledge that certain function arguments will not be null.
 

Parameter 2 has been declared nonnull. It isn't being passed as NULL.

The generated code elides a test for parameter 3 being NULL. This parameter has
not been declared nonnull.


-- 

hv at crypt dot org changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44081



[Bug fortran/31820] Warning if case label value exceeds maximum value for type

2010-05-11 Thread dfranke at gcc dot gnu dot org


--- Comment #7 from dfranke at gcc dot gnu dot org  2010-05-11 15:43 ---
Subject: Bug 31820

Author: dfranke
Date: Tue May 11 15:43:16 2010
New Revision: 159278

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159278
Log:
gcc/fortran/:
2010-05-11  Daniel Franke  franke.dan...@gmail.com

PR fortran/31820
* resolve.c (validate_case_label_expr): Removed FIXME.
(resolve_select): Raise default warning on case labels out of range
of the case expression.

gcc/testsuite/:
2010-05-11  Daniel Franke  franke.dan...@gmail.com

PR fortran/31820
* gfortran.dg/select_5.f90: Updated.


Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/resolve.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gfortran.dg/select_5.f90


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31820



[Bug fortran/31820] Warning if case label value exceeds maximum value for type

2010-05-11 Thread dfranke at gcc dot gnu dot org


--- Comment #8 from dfranke at gcc dot gnu dot org  2010-05-11 15:46 ---
Fixed in trunk. Closing.


-- 

dfranke at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31820



[Bug target/43941] Impossible to build any version beyond 4.2.4

2010-05-11 Thread h dot m dot brand at xs4all dot nl


--- Comment #5 from h dot m dot brand at xs4all dot nl  2010-05-11 15:54 
---
Subject: Re:  Impossible to build any version beyond 4.2.4

On 5 May 2010 20:54:53 -, sje at cup dot hp dot com
gcc-bugzi...@gcc.gnu.org wrote:

 --- Comment #4 from sje at cup dot hp dot com  2010-05-05 20:54 ---
 I have reproduced this failure, and the problem seems to be in GMP.  You
 mention that you set ABI to 64.  I noticed that if I built GMP with the HP
 compiler ABI is set to 32 and then when I built GCC with that GMP it failed in
 the manner you show in your report.  When I built GMP with GCC, ABI was set to
 64 and the compiler I built with that GMP worked fine.  You might want to try
 rebuilding GMP with GCC.
 
 Also, you mentioned that the HP Porting Center only has GCC 4.2.3, you can get
 newer pre-built GCC versions for HP-UX at http://www.hp.com/go/gcc (though
 these are all built in 32 bit mode).
 
 I was able to build GCC using HP C (in 32 bit mode) with no problems and no
 changes needed.

I have just rebuilt gmp, mpfr, and mpc with GNU gcc-4.2.4/64 ABI=64

All checks passed for gmp, mpfr, and mpc before I installed

Using the below Conf:
--8---
export LD_PXDB=/usr/bin/true

export CONFIG_SITE=
export CC=gcc
export CFLAGS=-mlp64 -fPIC
export CCFLAGS=-mlp64 -fPIC
export CXXFLAGS=-mlp64 -fPIC
export PATH=/pro/3gl/GNU/gcc/bin:.:/usr/local/ia64/bin:/pro/local/bin
export PATH=$PATH:/usr/bin:/opt/ansic/bin:/usr/ccs/bin:/opt/langtools/bin
export PATH=$PATH:/opt/imake/bin

rm -rf obj
mkdir obj
cd obj
../src/configure \
--enable-languages=c,c++ \
--prefix=/usr/local/ia64 --with-local-prefix=/usr/local/ia64 \
--with-gnu-as --with-as=/usr/local/ia64/bin/as \
--with-ld=/usr/ccs/bin/ld \
--disable-shared \
--disable-nls \
--with-mpfr=/usr/local/ia64 \
--with-gmp=/usr/local/ia64 \
--with-mpc=/usr/local/ia64
# Force 64bit in STAGE1_CFLAGS
perl -pi -e'm/CFLAGS\s*=/ and s/-fkeep-inline-functions/-mlp64
-fkeep-inline-functions/' Makefile
--8---

Building gcc failed with an internal compiler error for 4.3.4, 4.4.4,
and 4.5.0 (all at a different location btw)

I need a 64bit environment, because I have only 64bit libraries and
need a 64bit libgcc to link with other applications.

I have binutils-2.18 available, for which I had to disable ar and ranlib


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43941



[Bug c/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread hpa at zytor dot com


--- Comment #9 from hpa at zytor dot com  2010-05-11 16:15 ---
Thanks everyone for jumping (groan) on this.

From the looks of it, changing the asm goto statement itself to:

  asm goto (# Either %l[f_yes] or %l[f_no]\n\t
jmp %l[f_yes]
: : : : f_yes, f_no);

... *and* adding:

  asm volatile(); /* gcc bug 44071 workaround */

... immediately before __builtin_unreachable(); does make it output correct
code, at least with gcc 4.5.0.


-- 

hpa at zytor dot com changed:

   What|Removed |Added

  Component|middle-end  |c


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug fortran/33015] g77 extension: Implement support for DATA jhlf /'f'/

2010-05-11 Thread dfranke at gcc dot gnu dot org


--- Comment #2 from dfranke at gcc dot gnu dot org  2010-05-11 16:38 ---
(In reply to comment #1)
 Just for completeness: This is a regression with regards to g77.

The standards are a mouthful already. Do we need every extension that there
ever was? Besides this PR, demand was non-existent, as far as I can tell.

How about: document the absence of this feature and close as WONTFIX?


-- 

dfranke at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33015



[Bug c++/43890] [4.6 Regression] invalid uninitialized reference in class

2010-05-11 Thread fabien dot chene at gmail dot com


--- Comment #6 from fabien dot chene at gmail dot com  2010-05-11 16:41 
---
Fixed in rev 158918, committed by Jason.


-- 

fabien dot chene at gmail dot com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43890



[Bug c++/43951] [4.6 Regression] Revision 158918 miscompiled 483.xalancbmk in SPEC CPU 2006

2010-05-11 Thread fabien dot chene at gmail dot com


--- Comment #14 from fabien dot chene at gmail dot com  2010-05-11 16:43 
---
Fixed (committed by Jason).


-- 

fabien dot chene at gmail dot com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43951



[Bug fortran/43711] Unformitive error message for two NOWAIT in OpenMP directive

2010-05-11 Thread dfranke at gcc dot gnu dot org


--- Comment #3 from dfranke at gcc dot gnu dot org  2010-05-11 16:45 ---
Subject: Bug 43711

Author: dfranke
Date: Tue May 11 16:45:17 2010
New Revision: 159282

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159282
Log:
gcc/fortran/:
2010-05-11  Daniel Franke  franke.dan...@gmail.com

PR fortran/43711
* openmp.c (gfc_match_omp_taskwait): Report unexpected characters
after OMP statement.
(gfc_match_omp_critical): Likewise.
(gfc_match_omp_flush): Likewise.
(gfc_match_omp_workshare): Likewise.
(gfc_match_omp_master): Likewise.
(gfc_match_omp_ordered): Likewise.
(gfc_match_omp_atomic): Likewise.
(gfc_match_omp_barrier): Likewise.
(gfc_match_omp_end_nowait): Likewise.

gcc/testsuite/:
2010-05-11  Daniel Franke  franke.dan...@gmail.com

PR fortran/43711
* gfortran.dg/gomp/pr43711.f90: New.


Added:
trunk/gcc/testsuite/gfortran.dg/gomp/pr43711.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/openmp.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43711



[Bug fortran/43711] Unformitive error message for two NOWAIT in OpenMP directive

2010-05-11 Thread dfranke at gcc dot gnu dot org


--- Comment #4 from dfranke at gcc dot gnu dot org  2010-05-11 16:46 ---
Fixed in trunk. Closing.


-- 

dfranke at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43711



[Bug fortran/43711] Unformitive error message for two NOWAIT in OpenMP directive

2010-05-11 Thread dfranke at gcc dot gnu dot org


--- Comment #5 from dfranke at gcc dot gnu dot org  2010-05-11 16:46 ---
(In reply to comment #4)
 Fixed in trunk. Closing.
...


-- 

dfranke at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43711



[Bug rtl-optimization/41064] [4.4 Regression]: build breakage for cris-elf building newlib, ICE in extract_insn, from r150726

2010-05-11 Thread hp at gcc dot gnu dot org


--- Comment #9 from hp at gcc dot gnu dot org  2010-05-11 16:48 ---
(In reply to comment #8)
 In this case, I guess the way to go would be to apply *both* my patch
 and Hans-Peter's patch to the 4.4 branch ...

I'm sorry I missed that the committed patch was fingered as a regressor (sp?). 
Anyway the above approach sounds right.
The 4.4 branch results looks good for cris-elf in my autotester FWIW.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41064



[Bug middle-end/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #10 from jakub at gcc dot gnu dot org  2010-05-11 16:50 ---
Yeah.
BTW: you don't necessarily need to use the %l[f_yes] syntax, when there are no
input operands of the asm goto you can just as well use %l0 resp. %l1.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|c   |middle-end


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug target/43927] genautomata: undeclared unit or reservation `cortex_a9_}ult'

2010-05-11 Thread danglin at gcc dot gnu dot org


--- Comment #3 from danglin at gcc dot gnu dot org  2010-05-11 16:58 ---
Fixed.


-- 

danglin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43927



[Bug rtl-optimization/41064] [4.4 Regression]: build breakage for cris-elf building newlib, ICE in extract_insn, from r150726

2010-05-11 Thread hp at gcc dot gnu dot org


--- Comment #10 from hp at gcc dot gnu dot org  2010-05-11 17:06 ---
(In reply to comment #6)
 Causes PR40414 on GCC 4.4.x, reopening to make the other PR depend on this.

Looks like the above statement is wrong: the committed patch for this PR is
just (one of the two) required for PR40414.  I'm closing this as there's no
reason to hold *this* PR open regardless of the state of PR40414.


-- 

hp at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41064



[Bug rtl-optimization/41064] [4.4 Regression]: build breakage for cris-elf building newlib, ICE in extract_insn, from r150726

2010-05-11 Thread hp at gcc dot gnu dot org


--- Comment #11 from hp at gcc dot gnu dot org  2010-05-11 17:17 ---
Changing back target milestone to reflect the earliest release known to have
the fix.


-- 

hp at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.5   |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41064



[Bug c/43999] Gcc (lib1funcs.asm) doesn't build on ARM/Thumb2

2010-05-11 Thread jingyu at google dot com


--- Comment #3 from jingyu at google dot com  2010-05-11 17:56 ---
I configure gcc with --with-arch=armv5te. The default multilib will be compiled
in ARM mode.
The error happens when I build the armv7-a/thumb multilib.
I checked the config.log for armv7-a/thumb/libgcc, libgcc was indeed configured
with -march=armv7-a -mthumb. So the code will be generated in thumb2 mode.

In gcc/config/arm/lib1funcs.asm, do_it hs, t means itt hs.
The condition of the IT block must match the condition of the instructions
inside. hs here looks like a typo. I change hs into ne, then
lib1funcs.asm is compiled. This IT block is rephrased into

  5e:   2800cmp r0, #0
  60:   bf1citt ne
  62:   ea5f 1313   movsne.wr3, r3, lsr #4
  66:   0909lsrne   r1, r1, #4

Am I correct?
Thanks.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43999



[Bug fortran/44084] New: OpenMP - case involving tasks with implicit shared i - incorrect output

2010-05-11 Thread longb at cray dot com
Test Case:

!  derived from OpenMP test omp3f/F03_2_9_1_1_4a.f90
!  REFERENCES : OpenMP 3.0, p. 79, lines 11-14
program F03_2_9_1_1_4a
   use omp_lib
   implicit none
   integer, parameter :: NT = 4
   integer, parameter :: EXPECTED_i = -1 ! expected value of i at end
   integer, parameter :: EXPECTED_sum_i = (NT+1)*NT/2 ! 1 + 2 + ... + NT
   integer :: i = EXPECTED_i
   integer :: sum_i = 0 ! initialize to an invalid value

   call omp_set_dynamic(.false.)
   call omp_set_num_threads(NT)

!$omp parallel shared(sum_i)
   !$omp single
   !$omp task
  ! private(i) legal per OMP 3.0, p. 79, lines 11-14
  !$omp task private(i)
  do i = 1,NT ! sequential loop
 ! firstprivate(i) legal per OMP 3.0, p. 79, lines 11-14
 ! (...and on enclosed constructs...)
 !$omp task firstprivate(i)
 !$omp atomic
 sum_i = sum_i + i ! shared per OMP 3.0, p. 79, lines 27-28,  31-33
 !$omp end task
  end do
  !$omp end task

  !$omp taskwait ! wait for the explicit task to finish

  ! i should be shared in this task region (OMP 3.0, p. 79, lines 31-33)
  if (i /= EXPECTED_i) then
 print *, 'FAIL (in task construct) - i == ', i , ' (expected ', 
  EXPECTED_i, ')'
  end if
   !$omp end task
   !$omp end single ! implicit barrier ensures all tasks have finished

   ! i should be shared in this parallel region (OMP 3.0, p. 79, lines 27-28)
   if (i /= EXPECTED_i) then
  print *, 'FAIL (in parallel construct) - i == ', i , ' (expected ', 
   EXPECTED_i, ')'
   end if
!$omp end parallel

   ! verify that sum_i is shared
   if (sum_i /= EXPECTED_sum_i) then
  print *, 'FAIL - sum_i == ', i , ' (expected ', EXPECTED_sum_i, ')'
   end if

end program F03_2_9_1_1_4a
 gfortran -fopenmp test.f90
 ./a.out
 FAIL (in task construct) - i ==32767  (expected   -1 )
 FAIL (in parallel construct) - i ==0  (expected   -1 )
 FAIL (in parallel construct) - i ==0  (expected   -1 )
 FAIL (in parallel construct) - i ==0  (expected   -1 )
 FAIL (in parallel construct) - i ==0  (expected   -1 )

Explanation from OpenMP testers:

This test case is derived from OpenMP test omp3f/F03_2_9_1_1_4a.f90 .
The variable i is initialized as part of the declaration, and should 
be implicitly shared in the regions of interest.  However, the values
checked seem to have lost the initialization when checked near the
ends of the constructs.  The result is incorrect output.

The OpenMP API version 3.0 (May 2008) states the following on p. 79:

 * Variables used as loop iteration variables in sequential loops in ...
a task construct may be listed in private, ... clauses on the ...
task construct, and on enclosed constructs, subject to other
restrictions.  (lines 11-14)

 * In a task construct, if no default clause is present, a variable that
is determined to be shared in all enclosing constructs, up to and
including the innermost enclosing parallel construct, is shared.
(lines 31-33)


[Expected output is no output, e.g. from Intel compiler.]


-- 
   Summary: OpenMP - case involving tasks with implicit shared i -
incorrect output
   Product: gcc
   Version: 4.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: longb at cray dot com
 GCC build triplet: x86_64-suse-linux
  GCC host triplet: x86_64-suse-linux
GCC target triplet: x86_64-suse-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44084



[Bug c++/44062] (void)var; doesn't prevent 'set but not used' warning

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #5 from jakub at gcc dot gnu dot org  2010-05-11 18:12 ---
Subject: Bug 44062

Author: jakub
Date: Tue May 11 18:12:28 2010
New Revision: 159286

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159286
Log:
PR c++/44062
* c-parser.c (c_parser_expression): Mark LHS of a comma
expression as read if it is a decl, handled component or
COMPOUND_EXPR with that on the RHS.
* c-typeck.c (c_process_expr_stmt): Mark RHS of COMPOUND_EXPR
if it is a decl or handled component.

* semantics.c (finish_expr_stmt): Don't call mark_exp_read here...
* cvt.c (convert_to_void): ... but here.  If expr is a COMPOUND_EXPR,
look at its second operand.

* c-c++-common/Wunused-var-7.c: New test.
* g++.dg/warn/Wunused-var-9.C: New test.

Added:
trunk/gcc/testsuite/c-c++-common/Wunused-var-7.c
trunk/gcc/testsuite/g++.dg/warn/Wunused-var-9.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-parser.c
trunk/gcc/c-typeck.c
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cvt.c
trunk/gcc/cp/semantics.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44062



[Bug c++/44059] Static initializers executed more than once when using unique global symbols

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #8 from jakub at gcc dot gnu dot org  2010-05-11 18:14 ---
Subject: Bug 44059

Author: jakub
Date: Tue May 11 18:14:19 2010
New Revision: 159287

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159287
Log:
PR c++/44059
* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use qnu_unique_object
even for DECL_ONE_ONLY DECL_ARTIFICIAL !TREE_READONLY decls.
* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Likewise.
* dwarf2asm.c (dw2_output_indirect_constant_1): Set TREE_READONLY
on DW.ref.* decls.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/alpha/elf.h
trunk/gcc/config/elfos.h
trunk/gcc/dwarf2asm.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44059



[Bug middle-end/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #11 from jakub at gcc dot gnu dot org  2010-05-11 18:18 ---
Subject: Bug 44071

Author: jakub
Date: Tue May 11 18:17:43 2010
New Revision: 159288

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159288
Log:
PR middle-end/44071
* cfglayout.c (fixup_reorder_chain): Allow asm goto to have
no fallthru edge.
* cfgcleanup.c (try_optimize_cfg): When in cfglayout mode
optimizing away empty bb with no successors, move over its
footer chain to fallthru predecessor.
* cfgrtl.c (patch_jump_insn): Update also REG_LABEL_OPERAND.
(rtl_split_edge): For asm goto call patch_jump_insn even if
splitting fallthru edge.

* c-c++-common/asmgoto-4.c: New test.
* gcc.target/i386/pr44071.c: New test.

Added:
trunk/gcc/testsuite/c-c++-common/asmgoto-4.c
trunk/gcc/testsuite/gcc.target/i386/pr44071.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cfgcleanup.c
trunk/gcc/cfglayout.c
trunk/gcc/cfgrtl.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



[Bug fortran/44085] New: OpenMP - untied task accesses threadprivate - non-conforming but no msg

2010-05-11 Thread longb at cray dot com
Test Case:

!  derived from OpenMP test omp3f/NF03_2_9_2_2a.f90
!  REFERENCES : OpenMP 3.0, p. 83, line 30
program NF03_2_9_2_2a
   implicit none
   integer, save :: threadprivate_var
!$omp threadprivate(threadprivate_var)

!$omp parallel
!$omp task untied
   threadprivate_var = 1
!$omp end task
!$omp end parallel

   print *, FAIL - Negative test should not compile
end program NF03_2_9_2_2a


 gfortran -fopenmp test.f90
 ./a.out
 FAIL - Negative test should not compile



Comments from OpenMP testers:

This test case is derived from OpenMP test omp3f/NF03_2_9_2_2a.f90 .
The negative test checks the following restriction:

The OpenMP API Version 3.0 (May 2008) states the following on p. 83 line 30:

 * A program in which an untied task accesses threadprivate storage
is non-conforming.


-- 
   Summary: OpenMP - untied task accesses threadprivate - non-
conforming but no msg
   Product: gcc
   Version: 4.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: longb at cray dot com
 GCC build triplet: x86_64-suse-linux
  GCC host triplet: x86_64-suse-linux
GCC target triplet: x86_64-suse-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44085



[Bug middle-end/44071] ICE with asm goto and __builtin_unreachable()

2010-05-11 Thread jakub at gcc dot gnu dot org


--- Comment #12 from jakub at gcc dot gnu dot org  2010-05-11 18:23 ---
Subject: Bug 44071

Author: jakub
Date: Tue May 11 18:22:52 2010
New Revision: 159289

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=159289
Log:
PR middle-end/44071
* cfglayout.c (fixup_reorder_chain): Allow asm goto to have
no fallthru edge.
* cfgcleanup.c (try_optimize_cfg): When in cfglayout mode
optimizing away empty bb with no successors, move over its
footer chain to fallthru predecessor.
* cfgrtl.c (patch_jump_insn): Update also REG_LABEL_OPERAND.
(rtl_split_edge): For asm goto call patch_jump_insn even if
splitting fallthru edge.

* c-c++-common/asmgoto-4.c: New test.
* gcc.target/i386/pr44071.c: New test.

Added:
branches/gcc-4_5-branch/gcc/testsuite/c-c++-common/asmgoto-4.c
branches/gcc-4_5-branch/gcc/testsuite/gcc.target/i386/pr44071.c
Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/cfgcleanup.c
branches/gcc-4_5-branch/gcc/cfglayout.c
branches/gcc-4_5-branch/gcc/cfgrtl.c
branches/gcc-4_5-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44071



  1   2   >