[Bug rtl-optimization/58365] [4.7/4.8/4.9 Regression] likely wrong code bug

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58365

--- Comment #5 from Jakub Jelinek  ---
That is actually the crossjumping pass after csa (jump2; though yes, previously
it has been part of csa).  In any case, I don't see anything wrong with the
cross jumping, it turns the two:
(set (mem/c:BLK (reg:DI 5 di [81]) [3 D.1761+0 S20 A32])
(mem/c:BLK (reg:DI 4 si [82]) [3 x6+0 S20 A32]))
and
(set (mem/c:BLK (reg:DI 5 di [84]) [3 D.1761+0 S20 A32])
(mem/u/c:BLK (reg:DI 4 si [85]) [3 x7+0 S20 A128]))
into:
(set (mem/c:BLK (reg:DI 5 di [84]) [3 D.1761+0 S20 A32])
(mem/u/c:BLK (reg:DI 4 si [85]) [3 S20 A32]))
(note, MEM_EXPR cleared), where si is set conditionally to x6 or x7.
And then we have the:
(insn 29 27 31 6 (set (mem/c:SI (const:DI (plus:DI (symbol_ref:DI ("x6") 
)
(const_int 4 [0x4]))) [2 x6.x2+0 S4 A32])
(const_int 1 [0x1])) pr58365.c:31 86 {*movsi_internal}
 (nil))
store that sched2 moves over the above rep_movsi, although there is a
(conditional, may, but doesn't have to) aliasing case.


[Bug fortran/57697] [OOP] Segfault with defined assignment for components during intrinsic assignment

2013-09-09 Thread burnus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57697

--- Comment #6 from Tobias Burnus  ---
Submitted patch: http://gcc.gnu.org/ml/fortran/2013-09/msg00016.html

As follow up, one should check whether arrays (lhs unallocated, same shape,
different shape) are correctly handled.


[Bug rtl-optimization/58365] [4.7/4.8/4.9 Regression] likely wrong code bug

2013-09-09 Thread mkuvyrkov at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58365

Maxim Kuvyrkov  changed:

   What|Removed |Added

 CC||rth at gcc dot gnu.org

--- Comment #4 from Maxim Kuvyrkov  ---
The underlying bug appears to be in CSA (combine-stack-adj.c) and I would
appreciate Richard's insight on how to fix it.

Summary: CSA merges stack variable into global one, and then alias analysis
thinks that ex-stack-now-global variable does not overlap with global
variables.

After patch in rev. 162592 code hoisting becomes able to simplify code just a
bit, which causes scheduler to generate a different sequence, exposing a latent
bug.

During expand we have:

  # BLOCK 3 freq:3900
  # PRED: 2 [39.0%]  (true,exec)
1 D.2750 = x6;
  goto ;
  # SUCC: 5 [100.0%]  (fallthru,exec)

  # BLOCK 4 freq:6100
  # PRED: 2 [61.0%]  (false,exec)
  D.2750 = x7;
  # SUCC: 5 [100.0%]  (fallthru,exec)

  # BLOCK 5 freq:1
  # PRED: 4 [100.0%]  (fallthru,exec) 3 [100.0%]  (fallthru,exec)
2 x8 = D.2750;
3 x6.x2 = 1;
  D.2733_1 = x8.x2;
  printf ("%d\n", D.2733_1);

CSA combines stack variable D.2750 in insn (1) into global x6, but fails to
update uses of D.2750.  After CSA DECL_RTL of MEM in insn (2) still references
D.2750 even though it now reads directly from x6.  Because D.2750 is on stack
and x6 is global -- alias analysis (nonoverlapping_memrefs_p()) tells scheduler
that it is OK to move insn (3) before insn (2).


[Bug tree-optimization/58343] [4.9 Regression] ICE in dfs_enumerate_from, at cfganal.c:1036

2013-09-09 Thread su at cs dot ucdavis.edu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58343

--- Comment #3 from Zhendong Su  ---
(In reply to Jeffrey A. Law from comment #2)

...  

> I've got a fix for this in testing.

Jeff, thanks very much for your explanation and quick fix.


[Bug rtl-optimization/58365] [4.7/4.8/4.9 Regression] likely wrong code bug

2013-09-09 Thread mkuvyrkov at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58365

--- Comment #3 from Maxim Kuvyrkov  ---
Bug introduced in revision 162592.  Investigating.

commit 48d5e32fb40bb7973e596b36d12ad4041d8ef10a
Author: mkuvyrkov 
Date:   Tue Jul 27 19:38:10 2010 +

PR target/42495
PR middle-end/42574
* gcse.c (hoist_expr_reaches_here_p): Remove excessive check.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162592
138bc75d-0d04-0410-961f


[Bug target/58330] powerpc64 atomic store split in two

2013-09-09 Thread amodra at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58330

--- Comment #3 from Alan Modra  ---
Author: amodra
Date: Mon Sep  9 23:48:10 2013
New Revision: 202418

URL: http://gcc.gnu.org/viewcvs?rev=202418&root=gcc&view=rev
Log:
PR target/58330
gcc/
* config/rs6000/rs6000.md (bswapdi2_64bit): Disable for volatile mems.
gcc/testsuite/
* gcc.target/powerpc/pr58330.c: New.


Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/rs6000.md
trunk/gcc/testsuite/ChangeLog


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

--- Comment #12 from Paolo Carlini  ---
For the record, I think I had in mind target/58104.


[Bug c++/58375] New: internal compiler error: in push_reload, at reload.c:1360

2013-09-09 Thread peter at stegemann dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58375

Bug ID: 58375
   Summary: internal compiler error: in push_reload, at
reload.c:1360
   Product: gcc
   Version: 4.8.1
Status: UNCONFIRMED
  Severity: blocker
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: peter at stegemann dot net

Created attachment 30778
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30778&action=edit
The culprit

 begin 
avr-gcc-4.8.1 (GCC) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Compiling C++: Source/Channel.cpp
avr-gcc-4.8.1 -c -mmcu=atmega2561 -I. -x c++ -include Setup.h -g
-DF_CPU=14745600UL  -DSYSTEM_VERSION= -DSYSTEM_MODE=
-DSYSTEM_STATUS_DISPLAY_MODE= -Os -funsigned-char -funsigned-bitfields
-fpack-struct -fcheck-new -fshort-enums -fno-exceptions -fno-rtti -Wall
-ISource -MMD -MP -MF .dep/Channel.o.d Source/Channel.cpp -o
obj/Source/Channel.o 
Source/Channel.cpp: In member function 'virtual void
Screen_Setup_Channel::display()':
Source/Channel.cpp:44:1: internal compiler error: in push_reload, at
reload.c:1360
 }
 ^
libbacktrace could not find executable to open


See the attached condensed project - slight changes in the source remove the
problem.

$ avr-gcc-4.8.1 -v
Using built-in specs.
COLLECT_GCC=avr-gcc-4.8.1
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/avr/4.8.1/lto-wrapper
Target: avr
Configured with: ../configure --target=avr --with-gmp=/opt/local/ --disable-nls
--enable-languages=c,c++ : (reconfigured) ../configure --program-suffix=-4.8.1
--target=avr --with-gmp=/opt/local/ --disable-nls --disable-libssp
--enable-languages=c,c++
Thread model: single
gcc version 4.8.1 (GCC)


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

--- Comment #11 from Jonathan Wakely  ---
(In reply to Paolo Carlini from comment #3)
> Thus this OSX, right? Because on x86_64-linux the problem cannot be
> reproduced. I think Jon triaged an issue about OSX a few weeks ago.

Hmm, maybe, I don't remember, OS X just seems generally broken to me :-\


[Bug c++/58375] internal compiler error: in push_reload, at reload.c:1360

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58375

--- Comment #1 from Paolo Carlini  ---
Doesn't look like a C++ front-end issue


[Bug target/44107] gcc emits frame (epilogue) info incompatible with the darwin {8,9}-unwinder,10-compacter

2013-09-09 Thread mrs at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44107

mrs at gcc dot gnu.org  changed:

   What|Removed |Added

 CC||mrs at gcc dot gnu.org

--- Comment #23 from mrs at gcc dot gnu.org  ---
There should be a forward pointer to one of these from the OS release you're
interested in.  Later releases tend to be what the later OS would use.  Short
answer, yes.


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread jbcoe at me dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

Jonathan Coe  changed:

   What|Removed |Added

  Attachment #30768|0   |1
is obsolete||

--- Comment #9 from Jonathan Coe  ---
Created attachment 30779
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30779&action=edit
Smaller program illustrating crash (fewer includes)


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread jbcoe at me dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

--- Comment #10 from Jonathan Coe  ---
Created attachment 30780
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30780&action=edit
OSX 10.8.4 Crash log from smaller program crash


[Bug c++/58375] internal compiler error: in push_reload, at reload.c:1360

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58375

Paolo Carlini  changed:

   What|Removed |Added

 CC|peter at stegemann dot net |
   Severity|blocker |normal


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread jbcoe at me dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

--- Comment #8 from Jonathan Coe  ---
I've pared down the example. The crash is much harder to reproduce now (maybe 1
in 20 runs). Please find code and crash log attached.


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

--- Comment #6 from Paolo Carlini  ---
In my opinion, the only hope to make progress about this issue is that somebody
knowledgeable about that target reduces the test to 20/30 lines of code with no
includes. Because, as is, with hundreds of kbytes of preprocessed code, and an
error about an illegal instruction which means nothing to the bulk of GCC
developers working mostly on linux, it could be anything, literally.
Personally, I don't even know whether thread local storage works fine with
gcc4.8.1 on darwin. For example, did you run the gcc and libstdc++ testsuites
on that machine? Are they clean?


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

--- Comment #5 from Dominique d'Humieres  ---
On x86_64-apple-darwin10, if I compile the test with -std=c++11
-fsanitize=address (w/wo -pthread), I get

==60580== ERROR: AddressSanitizer: heap-use-after-free on address
0x60080001bfe8 at pc 0x1249d bp 0x1039cce10 sp 0x1039cce08
READ of size 8 at 0x60080001bfe8 thread T16777215
0x60080001bfe8 is located 24 bytes inside of 40-byte region
[0x60080001bfd0,0x60080001bff8)
==60580== AddressSanitizer CHECK failed:
../../../../work/libsanitizer/asan/asan_report.cc:344 "((t)) != (0)" (0x0, 0x0)

If I compile with -g -std=c++11 (w/wo -pthread), valgrind crashes with

==60478== Thread 3:
==60478== Invalid read of size 8
==60478==at 0x12624: std::_Function_base::~_Function_base()
(functional:1997)
==60478==by 0x1284F: std::function::~function()
(functional:2138)
==60478==by 0x146C7: ThreadLocalGenerator::~ThreadLocalGenerator()
(pr58366.cpp:9)
==60478==by 0x100043218: (anonymous namespace)::run(void*) (in
/opt/gcc/gcc4.9w/lib/libstdc++.6.dylib)
==60478==by 0x1001BA39B: _pthread_exit (in /usr/lib/libSystem.B.dylib)
==60478==by 0x1001B9E88: thread_start (in /usr/lib/libSystem.B.dylib)
==60478==  Address 0x1003fcc78 is 24 bytes inside a block of size 40 free'd
==60478==at 0x10003452D: free (vg_replace_malloc.c:430)
==60478==by 0x1003E3A62: emutls_destroy (in
/opt/gcc/gcc4.9w/lib/libgcc_s.1.dylib)
==60478==by 0xFF: ???
==60478==by 0x1008FEEBF: ???
==60478==by 0x1008FEFFF: ???
==60478==by 0x1001BA6E7: _pthread_tsd_cleanup (in
/usr/lib/libSystem.B.dylib)
==60478== 
==60478== Invalid read of size 8
==60478==at 0x12631: std::_Function_base::~_Function_base()
(functional:1998)
==60478==by 0x1284F: std::function::~function()
(functional:2138)
==60478==by 0x146C7: ThreadLocalGenerator::~ThreadLocalGenerator()
(pr58366.cpp:9)
==60478==by 0x100043218: (anonymous namespace)::run(void*) (in
/opt/gcc/gcc4.9w/lib/libstdc++.6.dylib)
==60478==by 0x1001BA39B: _pthread_exit (in /usr/lib/libSystem.B.dylib)
==60478==by 0x1001B9E88: thread_start (in /usr/lib/libSystem.B.dylib)
==60478==  Address 0x1003fcc78 is 24 bytes inside a block of size 40 free'd
==60478==at 0x10003452D: free (vg_replace_malloc.c:430)
==60478==by 0x1003E3A62: emutls_destroy (in
/opt/gcc/gcc4.9w/lib/libgcc_s.1.dylib)
==60478==by 0xFF: ???
==60478==by 0x1008FEEBF: ???
==60478==by 0x1008FEFFF: ???
==60478==by 0x1001BA6E7: _pthread_tsd_cleanup (in
/usr/lib/libSystem.B.dylib)
==60478== 
==60478== Invalid read of size 8
==60478==at 0x13B39:
std::_Function_base::_Base_manager
()(std::mersenne_twister_engine)> >::_M_destroy(std::_Any_data&, std::integral_constant) (functional:1894)
==60478==by 0x134CE:
std::_Function_base::_Base_manager
()(std::mersenne_twister_engine)> >::_M_manager(std::_Any_data&, std::_Any_data const&,
std::_Manager_operation) (functional:1918)
==60478==by 0x12646: std::_Function_base::~_Function_base()
(functional:1998)
==60478==by 0x1284F: std::function::~function()
(functional:2138)
==60478==by 0x146C7: ThreadLocalGenerator::~ThreadLocalGenerator()
(pr58366.cpp:9)
==60478==by 0x100043218: (anonymous namespace)::run(void*) (in
/opt/gcc/gcc4.9w/lib/libstdc++.6.dylib)
==60478==by 0x1001BA39B: _pthread_exit (in /usr/lib/libSystem.B.dylib)
==60478==by 0x1001B9E88: thread_start (in /usr/lib/libSystem.B.dylib)
==60478==  Address 0x1003fcc68 is 8 bytes inside a block of size 40 free'd
==60478==at 0x10003452D: free (vg_replace_malloc.c:430)
==60478==by 0x1003E3A62: emutls_destroy (in
/opt/gcc/gcc4.9w/lib/libgcc_s.1.dylib)
==60478==by 0xFF: ???
==60478==by 0x1008FEEBF: ???
==60478==by 0x1008FEFFF: ???
==60478==by 0x1001BA6E7: _pthread_tsd_cleanup (in
/usr/lib/libSystem.B.dylib)
==60478== 
vg_alloc_ThreadState: no free slots available
Increase VG_N_THREADS, rebuild and try again.

valgrind: the 'impossible' happened:
   VG_N_THREADS is too low
==60478==at 0x1380340C7: ???
==60478==by 0x13803412E: ???
==60478==by 0x13803417C: ???
==60478==by 0x13803418A: ???
==60478==by 0x13809B5BF: ???
==60478==by 0x1380C4C9B: ???
==60478==by 0x1380A0179: ???
==60478==by 0x13809DAD2: ???
==60478==by 0x1380C463F: ???

sched status:
  running_tid=1

Thread 1: status = VgTs_Runnable
==60478==at 0x1001B9E52: __bsdthread_create (in /usr/lib/libSystem.B.dylib)
==60478==by 0x1000A8DEA:
std::thread::_M_start_thread(std::shared_ptr) (in
/opt/gcc/gcc4.9w/lib/libstdc++.6.dylib)
==60478==by 0x7FFF5FBFE97F: ???
==60478==by 0x7FFF5FBFE96F: ???

Thread 2: status = VgTs_Init
==60478==at 0x1001B9E7C: thread_start (in /usr/lib/libSystem.B.dylib)

Thread 3: status = VgTs_WaitSys
==60478==at 0x100180D7A: mach_msg_trap (in /usr/lib/libSystem.B.dylib)
==60478==by 0x1001817FF: semaphore_create (in /usr/lib/libSystem.B.dylib)
==60478==by 0x100

[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

Dominique d'Humieres  changed:

   What|Removed |Added

 CC||iains at gcc dot gnu.org

--- Comment #7 from Dominique d'Humieres  ---
> For example, did you run the gcc and libstdc++ testsuites on that machine? 
> Are they clean?

I run the full testsuite on trunk (all languages but go) and yes the tests are
mostly clean.

CCed Iain Sandoe.


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

Paolo Carlini  changed:

   What|Removed |Added

 CC|jbcoe at me dot com|jwakely.gcc at gmail 
dot com

--- Comment #3 from Paolo Carlini  ---
Thus this OSX, right? Because on x86_64-linux the problem cannot be reproduced.
I think Jon triaged an issue about OSX a few weeks ago.


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread jbcoe at me dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

--- Comment #4 from Jonathan Coe  ---
Yes, I've built on OS X 10.8.4 using a macports build of GCC 4.8.1.
I've tried adding -pthread when building - it makes no difference to the
crashing.
19 of 20 runs on my machine crash. I think if you managed 10-20 runs without a
crash I think that the bug does not exist on your machine.


[Bug target/44107] gcc emits frame (epilogue) info incompatible with the darwin {8,9}-unwinder,10-compacter

2013-09-09 Thread fang at csl dot cornell.edu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44107

--- Comment #22 from David Fang  ---
Do one of these apple libunwind sources (0.30, 0.35.1) correspond to what's
bundled in libgcc_s in darwin8,9,10?

http://opensource.apple.com/tarballs/libunwind/


[Bug tree-optimization/58343] [4.9 Regression] ICE in dfs_enumerate_from, at cfganal.c:1036

2013-09-09 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58343

--- Comment #2 from Jeffrey A. Law  ---
Zhendong,

Thanks for the testcase.  What's happening here is the code to allow threading
through a simple forwarder block exposes an opportunity to build a
significantly deeper jump threading path than was possible in the past.

In the middle of that path is a loop header.  We attempt to thread through the
loop header to a point in the middle of the loop.  This is generally considered
a bad idea (creates irreducible regions among other things) and the jump
threading code attempts to prune these kind of jump threading requests.

However, due to limitations in how these undesirable cases are detected, it was
missed.  And the shape of the CFG was such that the code to handle jump threads
though loop headers would fail catastrophically.

I've got a fix for this in testing.


[Bug c++/58366] invocation of thread_local class containing bound function leads to : "Illegal instruction: 4"

2013-09-09 Thread jbcoe at me dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58366

Jonathan Coe  changed:

   What|Removed |Added

 CC||jbcoe at me dot com

--- Comment #2 from Jonathan Coe  ---
Created attachment 30777
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30777&action=edit
Crash log


[Bug libquadmath/58327] Problem of quadmath in connection with SDL2

2013-09-09 Thread u.weber at gipko dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58327

--- Comment #3 from Ulrich Weber  ---
Thank you for the reply. Changing the include order to

#include "SDL2\SDL.h"
#include 

extern "C" {
#include "quadmath.h"
}

gives me the same wrong result.


[Bug libquadmath/58327] Problem of quadmath in connection with SDL2

2013-09-09 Thread u.weber at gipko dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58327

--- Comment #4 from Ulrich Weber  ---
(In reply to Tobias Burnus from comment #2)
> For what it is worth: It works under x86-64 Linux with GCC 4.9.
> 
> I assume that you do not link SDL2 but you just #include the file - is that
> correct?

I use the linker options -lmingw32 -lquadmath -lSDL2main -lSDL2
if this is the answer to your question. 

When I remove the references to SDL2 here I get a linker error

C:\Program Files (x86)\Dev-Cpp\MinGW32\lib\libmingw32.a(main.o)   
main.c:(.text.startup+0xa7): undefined reference to `WinMain@16'


[Bug other/58374] New: Wrong target check in configure.ac in libvtv

2013-09-09 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58374

Bug ID: 58374
   Summary: Wrong target check in configure.ac in libvtv
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: other
  Assignee: unassigned at gcc dot gnu.org
  Reporter: hjl.tools at gmail dot com

configure.ac in libvtv in has

unset VTV_SUPPORTED
AC_MSG_CHECKING([for host support for vtable verification])
. ${srcdir}/configure.tgt
AC_MSG_RESULT($VTV_SUPPORTED)

# Decide if it's usable.
use_vtable_verify=no
if test "x$VTV_SUPPORTED" = "xyes"; then
  use_vtable_verify=yes
  AC_MSG_NOTICE(using vtable verification)
fi 

# Do not delete or change the following two lines.  For why, see
# http://gcc.gnu.org/ml/libstdc++/2003-07/msg00451.html
AC_CANONICAL_SYSTEM
target_alias=${target_alias-$host_alias}
AC_SUBST(target_alias)
GCC_LIBSTDCXX_RAW_CXX_FLAGS

It won't work for targets like i686-linux nor x86_64-linux since
configure.tgt only recognizes canonical targets.  The VTV_SUPPORTED
check should be moved after AC_CANONICAL_SYSTEM.


[Bug bootstrap/58340] [4.9 regression] gcc/cp/pt.c:7064:1: internal compiler error: in propagate_threaded_block_debug_into, at tree-ssa-threadedge.c:623

2013-09-09 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58340

--- Comment #18 from Jeffrey A. Law  ---
I'm seeing ia64 fail with an insn does not match constraints failure when the
stage2 compiler builds the stage2 C++ runtime.  And that's *with* the fix I
checked in last night.  That smells like stage1 mis-compiled stage2.

So I'm going to keep this open while I track down that regression.

There's another ICE I'm aware of (pr58343), but I don't see the root cause of
that PR causing a mis-compilation, just ICEs for certain degenerate cases.


[Bug target/57931] There are superfluous movw instructions in generated ASM code with GCC-AVR (WinAVR)

2013-09-09 Thread gjl at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57931

Georg-Johann Lay  changed:

   What|Removed |Added

   Keywords||missed-optimization
 Target||avr
 Status|UNCONFIRMED |RESOLVED
 CC||gjl at gcc dot gnu.org
 Resolution|--- |WORKSFORME
  Build|avr |

--- Comment #1 from Georg-Johann Lay  ---
Newest "WinAVR" is avr-gcc 4.3.3 and thus is pretty much outdated.

I cannot confirm this with 4.8 where the generated code (after adding #include
 to the source) reads:

$ avr-gcc foo.c -mmcu=attiny85 -Os -std=gnu99 -S

median:
/* prologue: function */
/* frame size = 0 */
/* stack size = 0 */
.L__stack_usage = 0
cp r24,r22
cpc r25,r23
brge .L2
cp r24,r20
cpc r25,r21
brge .L3
movw r24,r22
rjmp .L10
.L2:
cp r22,r20
cpc r23,r21
brge .L7
.L10:
cp r20,r24
cpc r21,r25
brge .L3
movw r24,r20
ret
.L7:
movw r24,r22
.L3:
ret


[Bug libstdc++/58358] [4.7/4.8/4.9 Regression] search_n has a Complexity violation for random access iterator

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58358

--- Comment #16 from Paolo Carlini  ---
Thanks Chris, but I almost missed the patch. Please send it to the mailing
list, thanks!


[Bug tree-optimization/58364] [4.8/4.9 Regression] likely wrong code bug

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58364

--- Comment #4 from Jakub Jelinek  ---
Author: jakub
Date: Mon Sep  9 17:09:59 2013
New Revision: 202409

URL: http://gcc.gnu.org/viewcvs?rev=202409&root=gcc&view=rev
Log:
PR tree-optimization/58364
* tree-ssa-reassoc.c (init_range_entry): For BIT_NOT_EXPR on
BOOLEAN_TYPE, only invert in_p and continue with arg0 if
the current range can't be an unconditional true or false.

* gcc.c-torture/execute/pr58364.c: New test.

Added:
trunk/gcc/testsuite/gcc.c-torture/execute/pr58364.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-reassoc.c


[Bug tree-optimization/58364] [4.8/4.9 Regression] likely wrong code bug

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58364

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Mon Sep  9 17:11:05 2013
New Revision: 202410

URL: http://gcc.gnu.org/viewcvs?rev=202410&root=gcc&view=rev
Log:
PR tree-optimization/58364
* tree-ssa-reassoc.c (init_range_entry): For BIT_NOT_EXPR on
BOOLEAN_TYPE, only invert in_p and continue with arg0 if
the current range can't be an unconditional true or false.

* gcc.c-torture/execute/pr58364.c: New test.

Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.c-torture/execute/pr58364.c
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog
branches/gcc-4_8-branch/gcc/tree-ssa-reassoc.c


[Bug other/58082] avr-gcc vector table relocation truncation error with -mrelax option

2013-09-09 Thread gjl at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58082

Georg-Johann Lay  changed:

   What|Removed |Added

 Target||avr
 Status|UNCONFIRMED |RESOLVED
 CC||gjl at gcc dot gnu.org
 Resolution|--- |INVALID
   Severity|major   |normal

--- Comment #1 from Georg-Johann Lay  ---
Relaxation is a matter of Binutils.  The compiler driver just passes -mrelax
through to Binutils.  Please report the issue to the Binutils bug tracker
together with a valid test case, command options and Binutils version.  Thanks.


[Bug libstdc++/58358] [4.7/4.8/4.9 Regression] search_n has a Complexity violation for random access iterator

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58358

--- Comment #17 from Paolo Carlini  ---
Two nits: in the new testcase, remember to declare the test variable. Also, we
are standardizing on -std=gnu++11.


[Bug tree-optimization/58373] New: [4.9 Regression] g++: internal compiler error: Segmentation fault (program cc1plus)

2013-09-09 Thread markus at trippelsdorf dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58373

Bug ID: 58373
   Summary: [4.9 Regression] g++: internal compiler error:
Segmentation fault (program cc1plus)
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: markus at trippelsdorf dot de

Created attachment 30776
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30776&action=edit
reduced testcase

% gdb --args /var/tmp/gcc_test/usr/local/bin/g++ -c -Wall -Wextra -O3 test.ii
Reading symbols from /var/tmp/gcc_test/usr/local/bin/g++...done.
(gdb) run
Starting program: /var/tmp/gcc_test/usr/local/bin/g++ -c -Wall -Wextra -O3
test.ii
[New process 15370]
process 15370 is executing new program:
/var/tmp/gcc_test/usr/local/libexec/gcc/x86_64-unknown-linux-gnu/4.9.0/cc1plus

Program received signal SIGSEGV, Segmentation fault.
[Switching to process 15370]
0x7765c8fb in __GI___libc_malloc (bytes=200) at malloc.c:2855
2855  victim = _int_malloc(ar_ptr, bytes);
(gdb) bt
#0  0x7765c8fb in __GI___libc_malloc (bytes=200) at malloc.c:2855
#1  0x00ff30c0 in xrealloc (oldmem=, size=200) at
../../gcc/libiberty/xmalloc.c:177
#2  0x00bf62ad in reserve (exact=false,
reserve=, v=) at ../../gcc/gcc/vec.h:300
#3  vec_safe_reserve (exact=false,
nelems=, v=) at ../../gcc/gcc/vec.h:668
#4  vec_alloc (nelems=,
v=) at ../../gcc/gcc/vec.h:689
#5  copy (this=0x1634de0) at ../../gcc/gcc/vec.h:917
#6  copy (this=) at ../../gcc/gcc/vec.h:1460
#7  phi_translate_1 (expr=expr@entry=0x16aef80, set1=set1@entry=0x16b35d0,
set2=set2@entry=0x0, pred=pred@entry=0x770855b0,
phiblock=phiblock@entry=0x7706fbc8) at ../../gcc/gcc/tree-ssa-pre.c:1589
#8  0x00bf6adc in phi_translate (expr=0x16aef80, set1=0x16b35d0,
set2=0x0, pred=0x770855b0, phiblock=0x7706fbc8) at
../../gcc/gcc/tree-ssa-pre.c:1774
#9  0x00bf61c4 in phi_translate_1 (expr=expr@entry=0x169b550,
set1=set1@entry=0x16b35d0, set2=set2@entry=0x0, pred=pred@entry=0x770855b0,
phiblock=phiblock@entry=0x7706fbc8) at ../../gcc/gcc/tree-ssa-pre.c:1463
#10 0x00bf6adc in phi_translate (expr=0x169b550, set1=0x16b35d0,
set2=0x0, pred=0x770855b0, phiblock=0x7706fbc8) at
../../gcc/gcc/tree-ssa-pre.c:1774
...


[Bug c++/58325] [4.7 Regression] Spurious unused-but-set-variable warning on delete[] of volatile pointer

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58325

Jakub Jelinek  changed:

   What|Removed |Added

Summary|[4.7/4.8/4.9 Regression]|[4.7 Regression] Spurious
   |Spurious|unused-but-set-variable
   |unused-but-set-variable |warning on delete[] of
   |warning on delete[] of  |volatile pointer
   |volatile pointer|

--- Comment #4 from Jakub Jelinek  ---
Fixed for 4.8+ so far.


[Bug tree-optimization/58364] [4.8/4.9 Regression] likely wrong code bug

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58364

Jakub Jelinek  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #6 from Jakub Jelinek  ---
Fixed.


[Bug libstdc++/58358] [4.7/4.8/4.9 Regression] search_n has a Complexity violation for random access iterator

2013-09-09 Thread kariya_mitsuru at hotmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58358

--- Comment #15 from Mitsuru Kariya  ---
Created attachment 30775
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30775&action=edit
Patch

For your convenience, I attached a patch for this problem.

This algorithm is always scanned to reverse order.
If a scan fails in less than enough, a re-scan is performed from the point that
advanced necessary elements from the original starting point.

For example, if __count is 20 and a scan fails after 18 elements succeeded, a
re-scan is performed from the point that advanced 2 elements.


[Bug c++/58325] [4.7/4.8/4.9 Regression] Spurious unused-but-set-variable warning on delete[] of volatile pointer

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58325

--- Comment #3 from Jakub Jelinek  ---
Author: jakub
Date: Mon Sep  9 17:12:50 2013
New Revision: 202412

URL: http://gcc.gnu.org/viewcvs?rev=202412&root=gcc&view=rev
Log:
PR c++/58325
* init.c (build_vec_delete): Call mark_rvalue_use on base.

* g++.dg/warn/Wunused-var-21.C: New test.

Added:
branches/gcc-4_8-branch/gcc/testsuite/g++.dg/warn/Wunused-var-21.C
Modified:
branches/gcc-4_8-branch/gcc/cp/ChangeLog
branches/gcc-4_8-branch/gcc/cp/init.c
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog


[Bug c++/58325] [4.7/4.8/4.9 Regression] Spurious unused-but-set-variable warning on delete[] of volatile pointer

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58325

--- Comment #2 from Jakub Jelinek  ---
Author: jakub
Date: Mon Sep  9 17:12:15 2013
New Revision: 202411

URL: http://gcc.gnu.org/viewcvs?rev=202411&root=gcc&view=rev
Log:
PR c++/58325
* init.c (build_vec_delete): Call mark_rvalue_use on base.

* g++.dg/warn/Wunused-var-21.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/warn/Wunused-var-21.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/init.c
trunk/gcc/testsuite/ChangeLog


[Bug ipa/58106] ICE: in ipa_edge_duplication_hook, at ipa-prop.c:2839

2013-09-09 Thread jamborm at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58106

Martin Jambor  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #6 from Martin Jambor  ---
Fixed.


[Bug c++/43452] Array delete causes error on incomplete type

2013-09-09 Thread paolo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43452

--- Comment #7 from paolo at gcc dot gnu.org  ---
Author: paolo
Date: Mon Sep  9 14:47:21 2013
New Revision: 202405

URL: http://gcc.gnu.org/viewcvs?rev=202405&root=gcc&view=rev
Log:
2013-09-09  Paolo Carlini  

PR c++/43452
* doc/invoke.texi (-Wdelete-incomplete): Document it.

/c-family
2013-09-09  Paolo Carlini  

PR c++/43452
* c.opt (Wdelete-incomplete): Add.

/cp
2013-09-09  Paolo Carlini  

PR c++/43452
* init.c (build_vec_delete_1): When the type is incomplete emit a
warning, enabled by default (not an error).
(build_delete): Adjust to use OPT_Wdelete_incomplete.

/testsuite
2013-09-09  Paolo Carlini  

PR c++/43452
* g++.dg/warn/Wdelete-incomplete-1.C: New.
* g++.dg/warn/Wdelete-incomplete-2.C: Likewise.
* g++.dg/init/delete1.C: Adjust.

Modified:
trunk/gcc/testsuite/ChangeLog


[Bug c++/58372] New: internal compiler error: ix86_compute_fra > me_layout

2013-09-09 Thread sonoro at telefonica dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58372

Bug ID: 58372
   Summary: internal compiler error: ix86_compute_fra > me_layout
   Product: gcc
   Version: 4.8.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: sonoro at telefonica dot net

I get this with mingw32-4.8.1-posix-sjlj but not with 
mingw32-4.8.1-posix-dwarf

C:\SupercolliderRepos\master4\supercollider\server\plugins\DelayUGens.cpp: 
In function 'void BufSampleRate_next(BufInfoUnit*,
 int)':
C:\SupercolliderRepos\master4\supercollider\server\plugins\DelayUGens.cpp:570:1:
 
internal compiler error: in ix86_compute_frame_layout, at
config/i386/i386.c:8981
 }

I post the ii file but I dont know if it will succed as it is bigger than 1000k

also happens with 4.8.0 and not with 4.7.2


[Bug c/58346] ICE with SIGFPE at -O1 and above on x86_64-linux-gnu (affecting trunk, 4.8, 4.7, and 4.6)

2013-09-09 Thread joseph at codesourcery dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58346

--- Comment #5 from joseph at codesourcery dot com  ---
I think some of the uses of the zero-size-objects extension are ones for 
which making an array of such objects is reasonable, but it makes sense to 
give an error for trying to subtract pointers to such objects.


[Bug c++/58372] internal compiler error: ix86_compute_frame_layout

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58372

Paolo Carlini  changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING
   Last reconfirmed||2013-09-09
Summary|internal compiler error:|internal compiler error:
   |ix86_compute_fra >  |ix86_compute_frame_layout
   |me_layout   |
 Ever confirmed|0   |1

--- Comment #1 from Paolo Carlini  ---
In any case a self contained reproducer is a requirement. Please do your best
to reduce it to a manageable size

  http://gcc.gnu.org/wiki/A_guide_to_testcase_reduction

and otherwise compress it (with, say, gzip or bzip2).


[Bug sanitizer/56535] ICE: in build2_stat, at tree.c:3885 when compiling with -fsanitize=address

2013-09-09 Thread markus at trippelsdorf dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56535

--- Comment #7 from Markus Trippelsdorf  ---
Current trunk still fails with the same error:

/var/tmp/gcc_build_dir/./prev-gcc/xg++ -B/var/tmp/gcc_build_dir/./prev-gcc/
-B/usr/local/x86_64-unknown-linux-gnu/bin/ -nostdinc++
-B/var/tmp/gcc_build_dir/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-B/var/tmp/gcc_build_dir/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-I/var/tmp/gcc_build_dir/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/var/tmp/gcc_build_dir/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include
-I/var/tmp/gcc/libstdc++-v3/libsupc++
-L/var/tmp/gcc_build_dir/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-L/var/tmp/gcc_build_dir/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-c   -march=native -O3 -pipe -fsanitize=address -fprofile-use -DIN_GCC  
-fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing
-Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H
-DGENERATOR_FILE -I. -Ibuild -I../../gcc/gcc -I../../gcc/gcc/build
-I../../gcc/gcc/../include -I../../gcc/gcc/../libcpp/include 
-I../../gcc/gcc/../libdecnumber -I../../gcc/gcc/../libdecnumber/bid
-I../libdecnumber -I../../gcc/gcc/../libbacktrace\
-o build/genmodes.o ../../gcc/gcc/genmodes.c
../../gcc/gcc/genmodes.c: In function ‘void
make_complex_modes.constprop(mode_class, unsigned int)’:
../../gcc/gcc/genmodes.c:423:1: internal compiler error: in build2_stat, at
tree.c:4104
 make_complex_modes (enum mode_class cl,
 ^

[Bug rtl-optimization/57963] LRA S/390: esa mode failure memcpy-chk

2013-09-09 Thread krebbel at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57963

Andreas Krebbel  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #2 from Andreas Krebbel  ---
Fixed with: http://gcc.gnu.org/ml/gcc-patches/2013-08/msg00091.html


[Bug ipa/58371] New: internal compiler error: in ipcp_verify_propagated_values, at ipa-cp.c:892

2013-09-09 Thread kcc at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58371

Bug ID: 58371
   Summary: internal compiler error: in
ipcp_verify_propagated_values, at ipa-cp.c:892
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: ipa
  Assignee: unassigned at gcc dot gnu.org
  Reporter: kcc at gcc dot gnu.org

Created attachment 30774
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30774&action=edit
z.cc

Fresh gcc trunk r202241, Linux x86_64

% $GCC_TRUNK/bin/g++ -w z.cc -c -O2 
z.cc:200:1: internal compiler error: in ipcp_verify_propagated_values, at
ipa-cp.c:892
 }
 ^
0xf20fb8 ipcp_verify_propagated_values()
../../gcc/gcc/ipa-cp.c:892
0xf2342d ipcp_propagate_stage   
../../gcc/gcc/ipa-cp.c:2255 
0xf2342d ipcp_driver
../../gcc/gcc/ipa-cp.c:3600 
0xf2342d execute
../../gcc/gcc/ipa-cp.c:3698 

Test case attached (reduced from chromium sources).


[Bug c++/43452] Array delete causes error on incomplete type

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43452

Paolo Carlini  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |4.9.0

--- Comment #6 from Paolo Carlini  ---
Fixed for 4.9.0.


[Bug c++/43452] Array delete causes error on incomplete type

2013-09-09 Thread paolo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43452

--- Comment #5 from paolo at gcc dot gnu.org  ---
Author: paolo
Date: Mon Sep  9 14:31:16 2013
New Revision: 202404

URL: http://gcc.gnu.org/viewcvs?rev=202404&root=gcc&view=rev
Log:
2013-09-09  Paolo Carlini  

PR c++/43452
* doc/invoke.texi (-Wdelete-incomplete): Document it.

/c-family
2013-09-09  Paolo Carlini  

PR c++/43452
* c.opt (Wdelete-incomplete): Add.

/cp
2013-09-09  Paolo Carlini  

PR c++/43452
* init.c (build_vec_delete_1): When the type is incomplete emit a
warning, enabled by default (not an error).
(build_delete): Adjust to use OPT_Wdelete_incomplete.

/testsuite
2013-09-09  Paolo Carlini  

PR c++/43452
* g++.dg/warn/Wdelete-incomplete-1.C: New.
* g++.dg/warn/Wdelete-incomplete-2.C: Likewise.
* g++.dg/init/delete1.C: Adjust.

Added:
trunk/gcc/testsuite/g++.dg/warn/Wdelete-incomplete-1.C
trunk/gcc/testsuite/g++.dg/warn/Wdelete-incomplete-2.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-family/ChangeLog
trunk/gcc/c-family/c.opt
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/init.c
trunk/gcc/doc/invoke.texi
trunk/gcc/testsuite/g++.dg/init/delete1.C


[Bug preprocessor/58370] pre compiled headers failure on NetBSD/sparc64

2013-09-09 Thread martin at netbsd dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58370

--- Comment #3 from Martin Husemann  ---
(In reply to Richard Biener from comment #2)

> Probably because nobody submitted and tested a NetBSD implementation.

You mean an evil hack to try to avoid the relocation (like all existing host
hooks seem to do)?

Relocation of precompiled header information should not be host specific. With
it, any posix mmap (via the default implementation) would do.


[Bug preprocessor/58370] pre compiled headers failure on NetBSD/sparc64

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58370

--- Comment #2 from Richard Biener  ---
(In reply to Martin Husemann from comment #1)
> The fatal error seems to happen because NetBSD uses the default
> HAVE_MMAP_FILE implementation of gt_pch_get_address and gt_pch_use_address
> instead of specific host hooks.
> 
> Looking at the existing host hook implementations for those two functions I
> am really terrified. Why is relocation not possible?

Probably because nobody submitted and tested a NetBSD implementation.


[Bug testsuite/55956] Multiple failures on powerpc-apple-darwin9 in the acats test if the check-ada is run from the gcc directory

2013-09-09 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55956

Dominique d'Humieres  changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #6 from Dominique d'Humieres  ---
No answer: closing as duplicate of pr44107.

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


[Bug target/44107] gcc emits frame (epilogue) info incompatible with the darwin {8,9}-unwinder,10-compacter

2013-09-09 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44107

--- Comment #21 from Dominique d'Humieres  ---
*** Bug 55956 has been marked as a duplicate of this bug. ***


[Bug preprocessor/58370] pre compiled headers failure on NetBSD/sparc64

2013-09-09 Thread martin at netbsd dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58370

--- Comment #1 from Martin Husemann  ---
The fatal error seems to happen because NetBSD uses the default HAVE_MMAP_FILE
implementation of gt_pch_get_address and gt_pch_use_address instead of specific
host hooks.

Looking at the existing host hook implementations for those two functions I am
really terrified. Why is relocation not possible?


[Bug c++/58362] Wrong column number for unused parameter

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58362

Paolo Carlini  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #13 from Paolo Carlini  ---
Fixed for 4.9.0.


[Bug c++/58362] Wrong column number for unused parameter

2013-09-09 Thread paolo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58362

--- Comment #12 from paolo at gcc dot gnu.org  ---
Author: paolo
Date: Mon Sep  9 13:39:47 2013
New Revision: 202402

URL: http://gcc.gnu.org/viewcvs?rev=202402&root=gcc&view=rev
Log:
/cp
2013-09-09  Paolo Carlini  

PR c++/58362
* error.c (location_of): Don't handle PARM_DECLs specially.

/testsuite
2013-09-09  Paolo Carlini  

PR c++/58362
* g++.dg/warn/Wunused-parm-5.C: New.

Added:
trunk/gcc/testsuite/g++.dg/warn/Wunused-parm-5.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/error.c
trunk/gcc/testsuite/ChangeLog


[Bug c++/58363] Confusing error message for uncalled explicit destructor in expression

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58363

--- Comment #1 from Paolo Carlini  ---
pretty printing issue fixed for 4.9.0 in r202401:

58363.C:6:11: note:   cannot convert ‘m.~f’ (type ‘void’) to type ‘int’

[Bug preprocessor/58370] New: pre compiled headers failure on NetBSD/sparc64

2013-09-09 Thread martin at netbsd dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58370

Bug ID: 58370
   Summary: pre compiled headers failure on NetBSD/sparc64
   Product: gcc
   Version: 4.8.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: preprocessor
  Assignee: unassigned at gcc dot gnu.org
  Reporter: martin at netbsd dot org

Trying to configure gcc fails with an endless loop in one of the configure
tests of libstc++. There are actually two errors in this:

(1) a fatal error when reading a PCH file "had to relocate PCH"
(2) a SIGSEGV when trying to resolve symbol information for the diagnostic
message, which in turn leads to a SIGSEGV inside the SIGSEGV handler

I don't know if (2) is only fallout from (1). I can provide more debug output
if needed (not sure what part of this is NetBSD specific).

The backtrace is:

#0  0x012fff88 in linemap_location_from_macro_expansion_p (
set=0x42e7, location=19) at ../../gcc-4.8.1/libcpp/line-map.c:948
#1  0x012ff31c in linemap_lookup (set=0x42e7, line=19)
at ../../gcc-4.8.1/libcpp/line-map.c:642
#2  0x0130065c in linemap_macro_loc_to_def_point (set=0x42e7, 
location=19, original_map=0xa0c8)
at ../../gcc-4.8.1/libcpp/line-map.c:1134
#3  0x01300934 in linemap_resolve_location (set=0x42e7, loc=19, 
lrk=LRK_MACRO_DEFINITION_LOCATION, map=0xa0c8)
at ../../gcc-4.8.1/libcpp/line-map.c:1263
#4  0x012d4ab8 in diagnostic_report_current_module (context=0x17b28d0, 
where=19) at ../../gcc-4.8.1/gcc/diagnostic.c:481
#5  0x003a6368 in cp_diagnostic_starter (context=0x17b28d0, 
diagnostic=0xa308) at ../../gcc-4.8.1/gcc/cp/error.c:2907
#6  0x012d5e44 in diagnostic_report_diagnostic (context=0x17b28d0, 
diagnostic=0xa308) at ../../gcc-4.8.1/gcc/diagnostic.c:756
#7  0x012d6b90 in fatal_error (gmsgid=0x13e1230 "had to relocate PCH")
at ../../gcc-4.8.1/gcc/diagnostic.c:1076
#8  0x008e83dc in gt_pch_restore (f=0x424a0738)
at ../../gcc-4.8.1/gcc/ggc-common.c:704
#9  0x005c575c in c_common_read_pch (pfile=0x42765800, 
name=0x4275dbc0 "conftest.h.gch", fd=4, orig_name=0x4275dbb0 "conftest.h")
at ../../gcc-4.8.1/gcc/c-family/c-pch.c:370
#10 0x012f05f8 in should_stack_file (pfile=0x42765800, 
file=0x42788130, import=false) at ../../gcc-4.8.1/libcpp/files.c:787
#11 0x012f097c in _cpp_stack_file (pfile=0x42765800, file=0x42788130, 
import=false) at ../../gcc-4.8.1/libcpp/files.c:872
#12 0x012f0fe4 in _cpp_stack_include (pfile=0x42765800, 
fname=0x4275db90 "conftest.h", angle_brackets=0, type=IT_INCLUDE)
at ../../gcc-4.8.1/libcpp/files.c:1008
#13 0x012e1fc4 in do_include_common (pfile=0x42765800, type=IT_INCLUDE)
at ../../gcc-4.8.1/libcpp/directives.c:793
#14 0x012e2024 in do_include (pfile=0x42765800)
at ../../gcc-4.8.1/libcpp/directives.c:804
#15 0x012e13dc in _cpp_handle_directive (pfile=0x42765800, indented=0)
at ../../gcc-4.8.1/libcpp/directives.c:492
#16 0x012f9dc4 in _cpp_lex_token (pfile=0x42765800)
at ../../gcc-4.8.1/libcpp/lex.c:1990
#17 0x01306cec in cpp_get_token_1 (pfile=0x42765800, 
location=0xafd8) at ../../gcc-4.8.1/libcpp/macro.c:2355
#18 0x01307330 in cpp_get_token_with_location (pfile=0x42765800, 
loc=0xafd8) at ../../gcc-4.8.1/libcpp/macro.c:2537
#19 0x005b9484 in c_lex_with_flags (value=0xafe0, 
loc=0xafd8, cpp_flags=0xafd2 "", lex_flags=0)
at ../../gcc-4.8.1/gcc/c-family/c-lex.c:300
#20 0x003b225c in cp_lexer_get_preprocessor_token (lexer=0x0, 
token=0xafd0) at ../../gcc-4.8.1/gcc/cp/parser.c:715
#21 0x003f64e8 in cp_parser_initial_pragma (
first_token=0xafd0) at ../../gcc-4.8.1/gcc/cp/parser.c:28139
#22 0x003b1d98 in cp_lexer_new_main ()

This can be reproduced like this:

> cat conftest.h
#include 
> cat conftest.cc 
#include "conftest.h"
> $BUILDDIR/stage1-gcc/xg++ -B $BUILDDIR/stage1-gcc -Werror -Winvalid-pch 
> -Wno-deprecated -x c++-header conftest.h -o conftest.h.gch
> $BUILDDIR/stage1-gcc/xg++ -B $BUILDDIR/stage1-gcc -Werror -Winvalid-pch 
> -Wno-deprecated -c conftest.cc


A bit of gdb output:

Core was generated by `cc1plus'.
Program terminated with signal 11, Segmentation fault.
#0  0x012fff88 in linemap_location_from_macro_expansion_p (
set=0x42e7, location=19) at ../../gcc-4.8.1/libcpp/line-map.c:948
948   linemap_assert (location <= MAX_SOURCE_LOCATION
(gdb) list
943 {
944   if (IS_ADHOC_LOC (location))
945 location = set->location_adhoc_data_map.data[
946 location & MAX_SOURCE_LOCATION].locus;
947 
948   linemap_assert (location <= MAX_SOURCE_LOCATION
949   && (set->highest_locat

[Bug c++/56892] dllexport prevents inline inside dll

2013-09-09 Thread ktietz at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56892

Kai Tietz  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Kai Tietz  ---
Issue is fixed for 4.8.1+ and on trunk.
Close bug


[Bug tree-optimization/58326] [4.9 Regression] ICE in check_loop_closed_ssa_use, at tree-ssa-loop-manip.c:551

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58326

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
Version|unknown |4.9.0
 Resolution|--- |FIXED

--- Comment #8 from Richard Biener  ---
Fixed.


[Bug tree-optimization/58326] [4.9 Regression] ICE in check_loop_closed_ssa_use, at tree-ssa-loop-manip.c:551

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58326

--- Comment #7 from Richard Biener  ---
Author: rguenth
Date: Mon Sep  9 13:18:38 2013
New Revision: 202399

URL: http://gcc.gnu.org/viewcvs?rev=202399&root=gcc&view=rev
Log:
2013-09-09  Richard Biener  

PR middle-end/58326
* cfgloopmanip.c (fix_bb_placements): When fixing the placement
of a subloop record all its block as affecting loop-closed SSA form.

* gcc.dg/torture/pr58326-1.c: New testcase.
* gcc.dg/torture/pr58326-2.c: Likewise.

Added:
trunk/gcc/testsuite/gcc.dg/torture/pr58326-1.c
trunk/gcc/testsuite/gcc.dg/torture/pr58326-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cfgloopmanip.c
trunk/gcc/testsuite/ChangeLog


[Bug target/57735] ICE with -mtune=xscale (error: could not split insn) when building webkit

2013-09-09 Thread ktkachov at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57735

ktkachov at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #10 from ktkachov at gcc dot gnu.org ---
Fixed in 4.8 branch. Testcase added in trunk.


[Bug target/57735] ICE with -mtune=xscale (error: could not split insn) when building webkit

2013-09-09 Thread ktkachov at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57735

--- Comment #9 from ktkachov at gcc dot gnu.org ---
Author: ktkachov
Date: Mon Sep  9 13:16:44 2013
New Revision: 202398

URL: http://gcc.gnu.org/viewcvs?rev=202398&root=gcc&view=rev
Log:
2013-09-09  Kyrylo Tkachov  

PR target/57735
* g++.dg/ext/pr57735.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/ext/pr57735.C
Modified:
trunk/gcc/testsuite/ChangeLog


[Bug sanitizer/56535] ICE: in build2_stat, at tree.c:3885 when compiling with -fsanitize=address

2013-09-09 Thread dominiq at lps dot ens.fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56535

--- Comment #6 from Dominique d'Humieres  ---
I confirm that this PR has been "fixed" by revision 199409 (r199408 gives
ICEs).


[Bug bootstrap/58340] [4.9 regression] gcc/cp/pt.c:7064:1: internal compiler error: in propagate_threaded_block_debug_into, at tree-ssa-threadedge.c:623

2013-09-09 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58340

--- Comment #17 from Jeffrey A. Law  ---
*** Bug 58342 has been marked as a duplicate of this bug. ***


[Bug target/57735] ICE with -mtune=xscale (error: could not split insn) when building webkit

2013-09-09 Thread ktkachov at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57735

--- Comment #8 from ktkachov at gcc dot gnu.org ---
Author: ktkachov
Date: Mon Sep  9 13:11:45 2013
New Revision: 202397

URL: http://gcc.gnu.org/viewcvs?rev=202397&root=gcc&view=rev
Log:
[gcc/]
2013-09-09  Kyrylo Tkachov  

PR target/57735
Backport from mainline
2013-04-30  Richard Sandiford  

* explow.c (plus_constant): Pass "mode" to immed_double_int_const.
Use gen_int_mode rather than GEN_INT.

[gcc/testsuite]
2013-09-09  Kyrylo Tkachov  

PR target/57735
* g++.dg/ext/pr57735.C: New test.

Added:
branches/gcc-4_8-branch/gcc/testsuite/g++.dg/ext/pr57735.C
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/explow.c
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog


[Bug tree-optimization/58342] ICE in propagate_threaded_block_debug_into, at tree-ssa-threadedge.c:623

2013-09-09 Thread law at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58342

Jeffrey A. Law  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||law at redhat dot com
 Resolution|--- |DUPLICATE

--- Comment #3 from Jeffrey A. Law  ---
Fixed on trunk.

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


[Bug middle-end/57748] [4.7/4.8/4.9 Regression] ICE when expanding assignment to unaligned zero-sized array

2013-09-09 Thread bernd.edlinger at hotmail dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57748

--- Comment #35 from Bernd Edlinger  ---
Well, this bug seems to have a symmetical twin on the read side.

In the above example, if I add this:

  if (x->xx[0].b != 3.14F || x->xx[1].a != 0x123456789ABCDEF)
abort ();

this gets compiled:

movdqu  (%rdi), %xmm0
ucomiss .LC0(%rip), %xmm0
jp  .L2
jne .L2
movdqu  (%rdi), %xmm0
movabsq $81985529216486895, %rdx
movhlps %xmm0, %xmm1
movq%xmm1, %rax
cmpq%rdx, %rax
jne .L2

regardless if x is volatile or even with -fstrict-volatile-bitfields (!)


[Bug c++/58207] [4.8/4.9 Regression] ICE in sort_constexpr_mem_initializers due to out of bounds vector access

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58207

Jakub Jelinek  changed:

   What|Removed |Added

   Keywords||error-recovery
 CC||jason at gcc dot gnu.org

--- Comment #3 from Jakub Jelinek  ---
Started with r195986.
Another testcase that ICEs:
struct C
{
  virtual bool foo ();
};
struct D : public C
{
  constexpr D () : C (6) {}
};

Changing sort_constexpr_mem_initializers to stop searching at the end of vector
and in that case just assert errorcount > 0 and return v unmodified fixes those
ICEs, though it is kind of ugly.


[Bug tree-optimization/58294] [4.9 Regression] ice in update_ssa_across_abnormal_edges, at tree-inline.c:1892

2013-09-09 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58294

--- Comment #17 from Jan Hubicka  ---
Author: hubicka
Date: Mon Sep  9 12:09:50 2013
New Revision: 202389

URL: http://gcc.gnu.org/viewcvs?rev=202389&root=gcc&view=rev
Log:
PR middle-end/58294
* value-prof.c (gimple_ic): Copy also abnormal edges.
* g++.dg/torture/PR58294.C: New testcase.

Added:
trunk/gcc/testsuite/g++.dg/torture/PR58294.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/value-prof.c


[Bug c++/58207] [4.8/4.9 Regression] ICE in sort_constexpr_mem_initializers due to out of bounds vector access

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58207

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek  ---
Reduced testcase:

struct A
{
  virtual bool foo ();
};
struct B : public A
{
  constexpr B () : A (&::n) {}
};



[Bug tree-optimization/58326] [4.9 Regression] ICE in check_loop_closed_ssa_use, at tree-ssa-loop-manip.c:551

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58326

--- Comment #6 from Richard Biener  ---
Ok, so for one, fix_bb_placements for the case of moved subloop (headers):

  if (from->loop_father->header == from)
{
  /* Subloop header, maybe move the loop upward.  */
  if (!fix_loop_placement (from->loop_father, irred_invalidated))
continue;
  target_loop = loop_outer (from->loop_father);
}

doesn't include the header (or any of its body BBs in this case) in the
set of loop_closed_ssa_invalidated blocks.  At least the header can
use a name defined in the previous outer loop (and I fail to see why
a random loop body block couldn't).

But then, rewrite-into-LC-ssa does

static void
find_uses_to_rename_bb (basic_block bb, bitmap *use_blocks, bitmap need_phis)
{
  gimple_stmt_iterator bsi;
  edge e;
  edge_iterator ei;

  FOR_EACH_EDGE (e, ei, bb->succs)
for (bsi = gsi_start_phis (e->dest); !gsi_end_p (bsi); gsi_next (&bsi))
  {
gimple phi = gsi_stmt (bsi);
if (! virtual_operand_p (gimple_phi_result (phi)))
  find_uses_to_rename_use (bb, PHI_ARG_DEF_FROM_EDGE (phi, e),
   use_blocks, need_phis);
  }

so for uses in PHIs it considers all destinations of edges out of
"changed" blocks (but not uses in PHIs of the block itself).  For
some weird reason.  Well - in this case one predecessor is in the
set of changed blocks and one (the one from the backedge) isn't.

Fixing fix_bb_placements to include all blocks of moved sub-loops
in loop_closed_ssa_invalidated fixes the testcases, but still the
above looks odd.


[Bug c++/58362] Wrong column number for unused parameter

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58362

Paolo Carlini  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 CC|hubicka at ucw dot cz  |
   Assignee|unassigned at gcc dot gnu.org  |paolo.carlini at oracle 
dot com
   Target Milestone|--- |4.9.0

--- Comment #11 from Paolo Carlini  ---
Ok, that's doable.


[Bug rtl-optimization/58369] New: [4.8/4.9 regression] ICE in subreg_get_info when compiling boost for m68k-linux

2013-09-09 Thread mikpe at it dot uu.se
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58369

Bug ID: 58369
   Summary: [4.8/4.9 regression] ICE in subreg_get_info when
compiling boost for m68k-linux
   Product: gcc
   Version: 4.8.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: rtl-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: mikpe at it dot uu.se

Created attachment 30773
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30773&action=edit
Pre-processed non-reduced test case

Attempting to compile boost-1.54 with g++ 4.8 or 4.9 for m68k-linux (after
fixing a known boost alignment error that breaks jam) causes an ICE:

> g++ -O2 -fPIC -S ellint_3f.ii 
In file included from ./boost/math/special_functions/ellint_3.hpp:22:0,
 from ./boost/math/special_functions.hpp:27,
 from libs/math/src/tr1/pch.hpp:9,
 from libs/math/build/../src/tr1/ellint_3f.cpp:6:
./boost/math/special_functions/ellint_rj.hpp: In function 'T
boost::math::detail::ellint_rj_imp(T, T, T, T, const Policy&) [with T = double;
Policy =
boost::math::policies::policy,
boost::math::policies::pole_error<(boost::math::policies::error_policy_type)1u>,
boost::math::policies::overflow_error<(boost::math::policies::error_policy_type)1u>,
boost::math::policies::evaluation_error<(boost::math::policies::error_policy_type)1u>,
boost::math::policies::rounding_error<(boost::math::policies::error_policy_type)1u>,
boost::math::policies::default_policy, boost::math::policies::default_policy,
boost::math::policies::default_policy, boost::math::policies::default_policy,
boost::math::policies::default_policy,
boost::math::policies::default_policy>]':
./boost/math/special_functions/ellint_rj.hpp:151:1: internal compiler error: in
subreg_get_info, at rtlanal.c:3394
0x76ca1c subreg_get_info(unsigned int, machine_mode, unsigned int,
machine_mode, subreg_info*)
/tmp/gcc-4.8-r193425/gcc/rtlanal.c:3394
0x76ca2b subreg_regno_offset(unsigned int, machine_mode, unsigned int,
machine_mode)
/tmp/gcc-4.8-r193425/gcc/rtlanal.c:3446
0x75d1f0 choose_reload_regs
/tmp/gcc-4.8-r193425/gcc/reload1.c:6564
0x761227 reload_as_needed
/tmp/gcc-4.8-r193425/gcc/reload1.c:4648
0x766f5e reload(rtx_def*, int)
/tmp/gcc-4.8-r193425/gcc/reload1.c:1055
0x6ab68b do_reload
/tmp/gcc-4.8-r193425/gcc/ira.c:4636
0x6ab68b rest_of_handle_reload
/tmp/gcc-4.8-r193425/gcc/ira.c:4737
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See  for instructions.

4.7 is Ok.  Started with Bin Cheng's r193425.  Reproducible with a cross.

Originally from .

Currently attempting to auto-reduce the test case, but it's a painfully slow
process.


[Bug target/58361] Wrong floating point code generated for ARM target

2013-09-09 Thread rearnsha at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58361

Richard Earnshaw  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-09-09
 Ever confirmed|0   |1

--- Comment #1 from Richard Earnshaw  ---
Confirmed.  Could also happen on 4.8 or trunk, but this test case won't show
that because of other changes.


[Bug c++/58362] Wrong column number for unused parameter

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58362

--- Comment #10 from Paolo Carlini  ---
Nope, sorry, the C front-end is already fine, thus I guess we really want to
change location_of in the C++ front-end.


[Bug c++/58362] Wrong column number for unused parameter

2013-09-09 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58362

--- Comment #9 from Paolo Carlini  ---
I sent the simple patch and apparently people would rather prefer fixing
location_of to not do t = DECL_CONTEXT (t) for PARM_DECLs, likewise the C
front-end of course, in such a way that '+' works and we don't have to pass the
DECL_SOURCE_LOCATION. I can't work on this right now.


[Bug c++/58325] [4.7/4.8/4.9 Regression] Spurious unused-but-set-variable warning on delete[] of volatile pointer

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58325

Jakub Jelinek  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |jakub at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek  ---
Created attachment 30772
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30772&action=edit
gcc49-pr58325.patch

Untested fix.


[Bug c++/58325] [4.7/4.8/4.9 Regression] Spurious unused-but-set-variable warning on delete[] of volatile pointer

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58325

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|--- |4.7.4
Summary|Spurious|[4.7/4.8/4.9 Regression]
   |unused-but-set-variable |Spurious
   |warning on delete[] of  |unused-but-set-variable
   |volatile pointer|warning on delete[] of
   ||volatile pointer


[Bug tree-optimization/58294] [4.9 Regression] ice in update_ssa_across_abnormal_edges, at tree-inline.c:1892

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58294

--- Comment #16 from Jakub Jelinek  ---
richi has introduced them, not me, but that is just a detail ;).


[Bug tree-optimization/58294] [4.9 Regression] ice in update_ssa_across_abnormal_edges, at tree-inline.c:1892

2013-09-09 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58294

--- Comment #15 from Jan Hubicka  ---
Your fault then.  I suppose one can reproduce same problem with non-local gotos
by inlining C++ function into one with nested function...


[Bug tree-optimization/58364] [4.8/4.9 Regression] likely wrong code bug

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58364

Jakub Jelinek  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |jakub at gcc dot gnu.org

--- Comment #3 from Jakub Jelinek  ---
Created attachment 30771
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30771&action=edit
gcc49-pr58364.patch

Untested fix.


[Bug tree-optimization/58223] [4.8 Regression] wrong code at -O3 on x86_64-linux-gnu

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58223

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #9 from Richard Biener  ---
Fixed.


[Bug bootstrap/58368] [4.9 regression] bootstrap comparison failure in expr.o and i386.o on x86_64-linux

2013-09-09 Thread mikpe at it dot uu.se
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58368

--- Comment #2 from Mikael Pettersson  ---
Applying r202379 didn't fix the comparison failure, but reverting r202345 did.


[Bug tree-optimization/57685] [4.8 Regression] GCC stuck in an infinite loop

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57685

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #8 from Richard Biener  ---
Fixed.


[Bug tree-optimization/57521] [4.7/4.8 Regression] wrong code for expressions in loop at -O3

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57521

--- Comment #5 from Richard Biener  ---
Author: rguenth
Date: Mon Sep  9 09:51:18 2013
New Revision: 202388

URL: http://gcc.gnu.org/viewcvs?rev=202388&root=gcc&view=rev
Log:
2013-09-09  Richard Biener  

Backport from mainline
2013-08-27  Richard Biener  

PR tree-optimization/57521
* tree-if-conv.c (if_convertible_bb_p): Verify that at least
one edge is non-critical.
(find_phi_replacement_condition): Make sure to use a non-critical
edge.  Cleanup and remove old bug workarounds.
(bb_postdominates_preds): Remove.
(if_convertible_loop_p_1): Do not compute post-dominators.
(combine_blocks): Do not free post-dominators.
(main_tree_if_conversion): Likewise.

* gcc.dg/torture/pr57521.c: New testcase.

Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/torture/pr57521.c
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog
branches/gcc-4_8-branch/gcc/tree-if-conv.c


[Bug tree-optimization/57656] [4.7/4.8 Regression] Wrong constant folding

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57656

--- Comment #6 from Richard Biener  ---
Author: rguenth
Date: Mon Sep  9 09:49:54 2013
New Revision: 202387

URL: http://gcc.gnu.org/viewcvs?rev=202387&root=gcc&view=rev
Log:
2013-09-09  Richard Biener  

Backport from mainline
2013-09-03  Richard Biener  

PR middle-end/57656
* fold-const.c (negate_expr_p): Fix division case.
(negate_expr): Likewise.

* gcc.dg/torture/pr57656.c: New testcase.

Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/torture/pr57656.c
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/fold-const.c
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog


[Bug tree-optimization/57685] [4.8 Regression] GCC stuck in an infinite loop

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57685

--- Comment #7 from Richard Biener  ---
Author: rguenth
Date: Mon Sep  9 09:48:43 2013
New Revision: 202386

URL: http://gcc.gnu.org/viewcvs?rev=202386&root=gcc&view=rev
Log:
2013-09-09  Richard Biener  

Backport from mainline
2013-08-29  Richard Biener  

PR tree-optimization/57685
* tree-vrp.c (register_edge_assert_for_1): Recurse only for
single-use operands to avoid exponential complexity.

* gcc.dg/torture/pr57685.c: New testcase.

Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/torture/pr57685.c
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog
branches/gcc-4_8-branch/gcc/tree-vrp.c


[Bug tree-optimization/58294] [4.9 Regression] ice in update_ssa_across_abnormal_edges, at tree-inline.c:1892

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58294

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #14 from Jakub Jelinek  ---
The abnormal edges for setjmp were introduced just in 4.9, not in the early
times of tree-ssa.


[Bug tree-optimization/58223] [4.8 Regression] wrong code at -O3 on x86_64-linux-gnu

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58223

--- Comment #8 from Richard Biener  ---
Author: rguenth
Date: Mon Sep  9 09:47:24 2013
New Revision: 202385

URL: http://gcc.gnu.org/viewcvs?rev=202385&root=gcc&view=rev
Log:
2013-09-09  Richard Biener  

Backport from mainline
2013-08-30  Richard Biener  

PR tree-optimization/58223
* tree-loop-distribution.c (has_anti_dependence): Rename to ...
(has_anti_or_output_dependence): ... this and adjust to also
look for output dependences.
(mark_nodes_having_upstream_mem_writes): Adjust.
(rdg_flag_uses): Likewise.

* gcc.dg/torture/pr58223.c: New testcase.
* gcc.dg/tree-ssa/ldist-16.c: Flip expected behavior.

Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/torture/pr58223.c
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog
branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/tree-ssa/ldist-16.c
branches/gcc-4_8-branch/gcc/tree-loop-distribution.c


[Bug tree-optimization/58294] [4.9 Regression] ice in update_ssa_across_abnormal_edges, at tree-inline.c:1892

2013-09-09 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58294

--- Comment #13 from Jan Hubicka  ---
The problem here is the abnormal edge of setjmp not being copied around by
gimple_ic.  This bug is there since earlytimes of tree-ssa ;)


[Bug tree-optimization/58342] ICE in propagate_threaded_block_debug_into, at tree-ssa-threadedge.c:623

2013-09-09 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58342

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek  ---
Perhaps fixed by the r202379 fix?


[Bug tree-optimization/58294] [4.9 Regression] ice in update_ssa_across_abnormal_edges, at tree-inline.c:1892

2013-09-09 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58294

--- Comment #12 from Jan Hubicka  ---
Created attachment 30770
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30770&action=edit
proposed fix


[Bug c++/58252] [4.9 Regression] ice in gimple_get_virt_method_for_binfo with -O2

2013-09-09 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58252

Jan Hubicka  changed:

   What|Removed |Added

 CC||jason at gcc dot gnu.org

--- Comment #5 from Jan Hubicka  ---
This seems like a frontend issue to me.  OBJ_TYPE_REF must link object with
proper vtable.  If we can not safely fetch the type from THIS pointer type of
respective method, we need to improve the representation.


[Bug c++/58045] gcc 4.8 produces an undefined reference to an inline function

2013-09-09 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58045

Jan Hubicka  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-09-09
 Ever confirmed|0   |1

--- Comment #1 from Jan Hubicka  ---
This is different from the other PR.

Here C++ FE declare the function as:

_ZNK4llvm14raw_fd_ostream11current_posEv/6 (virtual uint64_t
llvm::raw_fd_ostream::current_pos() const) @0x77047980
  Type: function definition analyzed
  Visibility: external public weak comdat
comdat_group:_ZNK4llvm14raw_fd_ostream11current_posEv one_only virtual
  References: __gcov0._ZNK4llvm14raw_fd_ostream11current_posEv/78
(read)__gcov0._ZNK4llvm14raw_fd_ostream11current_posEv/78 (write)
  Referring:
  Availability: available
  Profile id: 1497168468
  Function flags: body
  Called by:
_ZL16writeStringTableRN4llvm14raw_fd_ostreamENS_8ArrayRefIN12_GLOBAL__N_118NewArchiveIteratorEEERSt6vectorIjSaIjEE.isra.8.constprop.12/90
(1.47 per call) (can throw external)

The meaning of external comdat does not make that much sense to me but I can
definitely make can_refer_decl_in_current_unit_p to declare the function
non-referable. That would untimately prevent inlining while it is certainly
possible, since body is around.

Jason, why the function is external and isn't there way to simply make it
comdat?


[Bug bootstrap/58368] [4.9 regression] bootstrap comparison failure in expr.o and i386.o on x86_64-linux

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58368

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|--- |4.9.0


[Bug bootstrap/58368] [4.9 regression] bootstrap comparison failure in expr.o and i386.o on x86_64-linux

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58368

--- Comment #1 from Richard Biener  ---
Possibly related to PR58340?


[Bug tree-optimization/58342] ICE in propagate_threaded_block_debug_into, at tree-ssa-threadedge.c:623

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58342

Richard Biener  changed:

   What|Removed |Added

 CC||law at gcc dot gnu.org
 Depends on||58340

--- Comment #1 from Richard Biener  ---
I cannot reproduce this one (maybe too many local patches ;)).


[Bug tree-optimization/58343] [4.9 Regression] ICE in dfs_enumerate_from, at cfganal.c:1036

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58343

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-09-09
 CC||law at gcc dot gnu.org
Version|unknown |4.9.0
   Target Milestone|--- |4.9.0
Summary|ICE in dfs_enumerate_from,  |[4.9 Regression] ICE in
   |at cfganal.c:1036   |dfs_enumerate_from, at
   ||cfganal.c:1036
 Ever confirmed|0   |1

--- Comment #1 from Richard Biener  ---
Confirmed.


[Bug middle-end/58344] ICE with segfault at -O1 and above on x86_64-linux-gnu

2013-09-09 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58344

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-09-09
 Depends on||58346
 Ever confirmed|0   |1

--- Comment #1 from Richard Biener  ---
Confirmed, related to 58346


  1   2   >