[Bug target/63234] arm used label is removed

2014-09-16 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63234

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #3 from Mikael Pettersson  ---
I can reproduce with gcc 4.7, 4.8, and 4.9 on armv5tel-linux-gnueabi, but not
with 4.6 or 5.0.  4.9 says:

> /mnt/scratch/objdir49/gcc/xgcc -B/mnt/scratch/objdir49/gcc/ -O1 -fPIC -c 
> pr63234.c
/tmp/ccG9Y32i.s: Assembler messages:
/tmp/ccG9Y32i.s:64: Error: invalid operands (.text and *UND* sections) for `-'

Line 64 contains
.word   .LANCHOR0(tlsldm) + (. - .LPIC3 - 8)


[Bug target/52897] gcc 4.7.0 generates worse code than gcc 3.4.6 for m68000

2014-09-13 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52897

--- Comment #5 from Mikael Pettersson  ---
I'm afraid that improving performance on m68k is not a high priority for most
gcc developers.  Interested parties may have to do the work themselves, or hire
someone to do it for them.


[Bug rtl-optimization/52773] internal error: in replace_pseudos_in, at reload1.c:577

2014-09-13 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52773

--- Comment #11 from Mikael Pettersson  ---
Probably just needs pinging.  FWIW I've had it in my 4.7 and 4.8 toolchains
(for all my targets) since last summer w/o issues.


[Bug c/63233] Missing Warray-bounds warning for array within struct

2014-09-13 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63233

--- Comment #6 from Mikael Pettersson  ---
(In reply to leis from comment #5)
> Fundamentally, what I'm really trying to do, is to have two arrays (of
> different types) in a fixed-sized struct. One array grows from the front,
> and one from the end. Dynamically I make sure that they do not overlap, but
> the sizes of the two arrays are not known statically. Is it really violating
> the standard?

Something like

union u {
  int a[50];
  char b[50 * sizeof int];
};

and accessing one array with incrementing indices and the other with
decrementing indices should work, if I understand your problem statement
correctly.  But this is now about programming not a gcc bug, so please use
gcc-help or some general C programming forum instead.


[Bug target/63209] [ARM] Wrong conditional move generated

2014-09-09 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63209

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
I can reproduce the wrong-code with gcc-4.9 on armv5tel-linux-gnueabi.


[Bug bootstrap/63204] New: gtype-desc.c:887:40: error: 'struct loop' has no member named 'former_header' breaks bootstrap

2014-09-08 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63204

Bug ID: 63204
   Summary: gtype-desc.c:887:40: error: 'struct loop' has no
member named 'former_header' breaks bootstrap
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
  Assignee: unassigned at gcc dot gnu.org
  Reporter: mikpelinux at gmail dot com

Attempting to bootstrap latest gcc-5 snapshot (20140907, aka r215005) fails
with:

g++ -c   -g -DIN_GCC-fno-exceptions -fno-rtti -fasynchronous-unwind-tables
-W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format
-Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings   -DHAVE_CONFIG_H -I. -I.
-I/mnt/scratch/gcc-5-20140907/gcc -I/mnt/scratch/gcc-5-20140907/gcc/.
-I/mnt/scratch/gcc-5-20140907/gcc/../include
-I/mnt/scratch/gcc-5-20140907/gcc/../libcpp/include 
-I/mnt/scratch/gcc-5-20140907/gcc/../libdecnumber
-I/mnt/scratch/gcc-5-20140907/gcc/../libdecnumber/dpd -I../libdecnumber
-I/mnt/scratch/gcc-5-20140907/gcc/../libbacktrace-o gtype-desc.o -MT
gtype-desc.o -MMD -MP -MF ./.deps/gtype-desc.TPo gtype-desc.c
In file included from /mnt/scratch/gcc-5-20140907/gcc/ggc.h:34:0,
 from /mnt/scratch/gcc-5-20140907/gcc/hash-table.h:199,
 from /mnt/scratch/gcc-5-20140907/gcc/hash-set.h:24,
 from /mnt/scratch/gcc-5-20140907/gcc/tree-core.h:24,
 from /mnt/scratch/gcc-5-20140907/gcc/tree.h:23,
 from gtype-desc.c:30:
gtype-desc.c: In function 'void gt_ggc_mx_loop(void*)':
gtype-desc.c:887:40: error: 'struct loop' has no member named 'former_header'
   gt_ggc_m_15basic_block_def ((*x).former_header);
^
./gtype-desc.h:829:7: note: in definition of macro 'gt_ggc_m_15basic_block_def'
   if (X != NULL) gt_ggc_mx_basic_block_def (X);\
   ^
gtype-desc.c:887:40: error: 'struct loop' has no member named 'former_header'
   gt_ggc_m_15basic_block_def ((*x).former_header);
^
./gtype-desc.h:829:45: note: in definition of macro
'gt_ggc_m_15basic_block_def'
   if (X != NULL) gt_ggc_mx_basic_block_def (X);\
 ^
gtype-desc.c: In function 'void gt_pch_nx_loop(void*)':
gtype-desc.c:4070:40: error: 'struct loop' has no member named 'former_header'
   gt_pch_n_15basic_block_def ((*x).former_header);
^
./gtype-desc.h:1733:7: note: in definition of macro
'gt_pch_n_15basic_block_def'
   if (X != NULL) gt_pch_nx_basic_block_def (X);\
   ^
gtype-desc.c:4070:40: error: 'struct loop' has no member named 'former_header'
   gt_pch_n_15basic_block_def ((*x).former_header);
^
./gtype-desc.h:1733:45: note: in definition of macro
'gt_pch_n_15basic_block_def'
   if (X != NULL) gt_pch_nx_basic_block_def (X);\
 ^
gtype-desc.c: In function 'void gt_pch_p_4loop(void*, void*,
gt_pointer_operator, void*)':
gtype-desc.c:7312:16: error: 'struct loop' has no member named 'former_header'
 op (&((*x).former_header), cookie);
^
make[3]: *** [gtype-desc.o] Error 1
make[3]: Leaving directory `/mnt/scratch/objdir50/gcc'
make[2]: *** [all-stage1-gcc] Error 2
make[2]: Leaving directory `/mnt/scratch/objdir50'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/mnt/scratch/objdir50'
make: *** [bootstrap] Error 2

So far I've gotten this both on armv5tel-linux-gnueabi and x86_64-pc-linux-gnu.

This is a regression from last week's snapshot.


[Bug c/63189] [4.8 Regression] Incorrect results from trivial loop when optimized with O3 or O2+tree vectorization

2014-09-06 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63189

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #3 from Mikael Pettersson  ---
I can reproduce the wrong-code with current 4.8, but not with 4.7.4 or 4.6.4
(all unmodified FSF versions).  The bug in 4.8 gets fixed by backporting
r202663, which also fixes PR60196.  The three test cases are essentially
identical.


[Bug target/62663] m68k / coldfire : compiling with -msep-data breaks the code

2014-09-02 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62663

--- Comment #2 from Mikael Pettersson  ---
Without -msep-data gcc outputs

jsr square_test

With -msep-data gcc outputs

move.l square_test@GOT(%a5),%a0
jsr (%a0)

Is that move.l unavailable on the mcf5307?  (I'm familiar with classic m68k but
not with the Coldfire line.)


[Bug ipa/62015] [4.8/4.9/5 Regression] ipa-cp-clone uses a clone that is too specialized for the call context

2014-08-30 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62015

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
I can reproduce this wrong-code on x86_64-linux with gcc 5-20140824,
4.9-20140827, and 4.8-20140828.  4.7-20140607 works.


[Bug c/62031] Different results between O2 and O3 for gcc-4.7.2-5 (Debian 4.7.2-5)

2014-08-06 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62031

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
I can reproduce with 4.8.3 and 4.9.1.  -fsanitize={address,undefined} finds
nothing to complain about.


[Bug tree-optimization/61964] [4.8 regression] krb5 database propagation enters infinite loop; reduced test case

2014-07-31 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61964

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #5 from Mikael Pettersson  ---
I've been staring as this test case, and I cannot find any dereference of a
wrong-typed pointer value.  The only oddity I can find is that at

  if (n->prev == (void *)h)

n == &node, n->prev == (struct node *)&heads[2] (so wrong-typed), h ==
&heads[2], so there is a '==' being applied to a wrong-typed pointer.  Is that
undefined behaviour?  I'll note that changing the test to

  if ((void *)n->prev == (void *)h)

still reproduces the wrong-code while looking technically Ok.

Also, there is no out-of-bounds error.


[Bug c++/61863] Data corruption when creating temporary object

2014-07-26 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61863

--- Comment #2 from Mikael Pettersson  ---
This was fixed for 4.9 by r205694 (PR59374).


[Bug c++/61863] Data corruption when creating temporary object

2014-07-21 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61863

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
When compiled with g++ 4.9.1 or 4.7.4 I see

Length in printLen= 8

when running the executable, but with g++ 4.8.3 I see

Length in printLen= 0


[Bug c++/61860] Internal compiler error Killed (program cc1plus)

2014-07-20 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61860

--- Comment #1 from Mikael Pettersson  ---
You ran out of RAM during the g++ job so the kernel killed it.  You need more
RAM (preferably), or to add some swap (unpleasant but sometimes necessary).


[Bug c++/61851] Compiling litecoin results in internal compile error

2014-07-19 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61851

--- Comment #1 from Mikael Pettersson  ---
You ran out of RAM.  Add some swap.


[Bug bootstrap/61797] [4.10 regression] 'bool decl_in_symtab_p(const_tree)' defined but not used error breaks x86_64-linux bootstrap

2014-07-13 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61797

--- Comment #1 from Mikael Pettersson  ---
decl_in_symtab_p is used under #ifdef ENABLE_CHECKING by symtab_get_node (also
in craph.h), and unconditionally by fold-const.c:tree_single_nonzero_warnv_p.

Sticking an __attribute__((__used__)) on decl_in_symtab_p allows bootstrap to
continue, until it hits

build/genmodes: config/i386/i386-modes.def:25: (TF) field format must not be
set
build/genmodes: config/i386/i386-modes.def:24: (XF) field format must not be
set
build/genmodes: machmode.def:203: (DF) field format must not be set
build/genmodes: machmode.def:202: (SF) field format must not be set
build/genmodes: machmode.def:244: (TD) field format must not be set
build/genmodes: machmode.def:243: (DD) field format must not be set
build/genmodes: machmode.def:242: (SD) field format must not be set
make[3]: *** [s-modes-m] Error 1

in stage 3, i.e. PR61757.


[Bug bootstrap/61797] New: [4.10 regression] 'bool decl_in_symtab_p(const_tree)' defined but not used error breaks x86_64-linux bootstrap

2014-07-13 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61797

Bug ID: 61797
   Summary: [4.10 regression] 'bool decl_in_symtab_p(const_tree)'
defined but not used error breaks x86_64-linux
bootstrap
   Product: gcc
   Version: 4.10.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
  Assignee: unassigned at gcc dot gnu.org
  Reporter: mikpelinux at gmail dot com

Attempting to bootstrap gcc-4.10-20140713 (r212499) on x86_64-linux fails with:

/mnt/scratch/objdir410/./prev-gcc/xg++ -B/mnt/scratch/objdir410/./prev-gcc/
-B/mnt/scratch/install410/x86_64-unknown-linux-gnu/bin/ -nostdinc++
-B/mnt/scratch/objdir410/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-B/mnt/scratch/objdir410/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs

-I/mnt/scratch/objdir410/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include/x86_64-unknown-linux-gnu
 -I/mnt/scratch/objdir410/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include 
-I/mnt/scratch/gcc-4.10-20140713/libstdc++-v3/libsupc++
-L/mnt/scratch/objdir410/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-L/mnt/scratch/objdir410/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-c  -DIN_GCC_FRONTEND -g -O2 -gtoggle -DIN_GCC-fno-exceptions -fno-rtti
-fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings
-Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic
-Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror  
-DHAVE_CONFIG_H -I. -Ic -I/mnt/scratch/gcc-4.10-20140713/gcc
-I/mnt/scratch/gcc-4.10-20140713/gcc/c
-I/mnt/scratch/gcc-4.10-20140713/gcc/../include
-I/mnt/scratch/gcc-4.10-20140713/gcc/../libcpp/include
-I/home/mikpe/pkgs/linux-x86_64/gmp-5.1.3/include
-I/home/mikpe/pkgs/linux-x86_64/mpfr-3.1.2/include
-I/home/mikpe/pkgs/linux-x86_64/mpc-1.0.2/include 
-I/mnt/scratch/gcc-4.10-20140713/gcc/../libdecnumber
-I/mnt/scratch/gcc-4.10-20140713/gcc/../libdecnumber/bid -I../libdecnumber
-I/mnt/scratch/gcc-4.10-20140713/gcc/../libbacktrace-o c/c-decl.o -MT
c/c-decl.o -MMD -MP -MF c/.deps/c-decl.TPo
/mnt/scratch/gcc-4.10-20140713/gcc/c/c-decl.c
In file included from /mnt/scratch/gcc-4.10-20140713/gcc/c/c-decl.c:59:0:
/mnt/scratch/gcc-4.10-20140713/gcc/cgraph.h:1158:1: error: 'bool
decl_in_symtab_p(const_tree)' defined but not used [-Werror=unused-function]
 decl_in_symtab_p (const_tree decl)
 ^
cc1plus: all warnings being treated as errors
make[3]: *** [c/c-decl.o] Error 1
make[3]: Leaving directory `/mnt/scratch/objdir410/gcc'
make[2]: *** [all-stage2-gcc] Error 2
make[2]: Leaving directory `/mnt/scratch/objdir410'
make[1]: *** [stage2-bubble] Error 2
make[1]: Leaving directory `/mnt/scratch/objdir410'
make: *** [bootstrap] Error 2

The previous weekly snapshot, 4.10-20140706 (r212315) bootstrapped fine.

Configuration options:
/mnt/scratch/gcc-4.10-20140713/configure --prefix=/mnt/scratch/install410
--with-gmp=/home/mikpe/pkgs/linux-x86_64/gmp-5.1.3
--with-mpfr=/home/mikpe/pkgs/linux-x86_64/mpfr-3.1.2
--with-mpc=/home/mikpe/pkgs/linux-x86_64/mpc-1.0.2 --disable-plugin
--disable-lto --disable-nls --enable-threads=posix --enable-checking=release
--disable-libmudflap --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go

Now trying to continue with a manual hack to silence the above error...


[Bug fortran/61680] vectorization gives wrong answer for sandybridge target

2014-07-03 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61680

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
I see the exact same two results with gcc-4.10-20140629 and gcc-4.8-20140626 on
an Ivy Bridge machine.


[Bug target/61622] internal compiler error: in simplify_const_unary_operation, at simplify-rtx.c:1508

2014-07-02 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61622

--- Comment #6 from Mikael Pettersson  ---
This _is_ a dup of PR57431 -- unfortunately PR57431 didn't fill out the "known
to work" or "known to fail" fields, so you might think it only applied to
trunk-to-be-4.9.0, but in fact its test case also ICEs current 4.8.

Both the PR57431 and the PR61622 test cases stop ICEing 4.8 when the fix for
PR57431 is backported to 4.8 (it applies cleanly).  Neither test case ICEs 4.7.


[Bug tree-optimization/61517] [4.10 Regression] wrong code at -Os and above on x86_64-linux-gnu

2014-06-30 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61517

--- Comment #4 from Mikael Pettersson  ---
Isn't this fixed now?


[Bug tree-optimization/61518] [4.10 Regression] wrong code (by tree vectorizer) at -O3 on x86_64-linux-gnu

2014-06-30 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61518

--- Comment #4 from Mikael Pettersson  ---
Isn't this fixed now?


[Bug target/61616] Internal compiler error during reload in gcc-4.7.4 configured as a cross-compiler for a mips target

2014-06-26 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61616

--- Comment #1 from Mikael Pettersson  ---
Upstream support for gcc-4.7 has just ended.  Please try gcc-4.8.3 or gcc-4.9.0
instead and report whether they work or not.


[Bug rtl-optimization/60947] [4.9/4.10 Regression] Unable to handle kernel paging request (linux kernel 2.6.28.9) with gcc 4.9 release

2014-06-26 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60947

--- Comment #16 from Mikael Pettersson  ---
(In reply to amker from comment #15)
> Well, only thing suspicious that I can see, the memset function is a special
> implementation and not from C standard library.  Basically it doesn't need
> to follow the standard, which means the return value could be something else
> other than the passed in pointer.  Though I doubt it would actually break
> the standard.
> 
> So YuFan, could you help look into implementation of memset to see if it
> acts as expected?
> 
> Thanks.

I recall seeing reports of the Linux/ARM kernel being miscompiled by gcc-4.8
(or so) a while ago, and it was traced to an in-kernel memset() (or related
mem/str-function) implementation not following the same return value convention
as the normal user-space version.  The problem is that newer gcc:s optimize
some mem/str-functions based on those return value conventions, so things
broke.  The 2.6.28 kernel is ancient, so it's not at all surprising it won't
work when compiled by non-ancient gcc:s.


[Bug target/61570] -march=native CPU you selected does not support x86-64 instruction under QEMU

2014-06-20 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61570

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #3 from Mikael Pettersson  ---
(In reply to Jakub Jelinek from comment #2)
> Sure, but for this model AFAIK we go through the default: case of PENTIUMPRO
> anyway, where we only test the flags, so even if it used some completely
> unknown family number, it would still behave the same.
> So, can't we before:
>   else if (has_sse3)
> /* It is Core Duo.  */
> cpu = "pentium-m";
>   else if (has_sse2)
> /* It is Pentium M.  */
> cpu = "pentium-m";
> just add
>   else if (has_longmode)
> /* Some unknown 64-bit CPU, perhaps emulator?  */
> cpu = "x86-64";
> ?

That looks reasonable.

> Otherwise, QEMU, if it doesn't want to support SSSE3 and SSE3, and doesn't
> want to support 3dNOW either would need to identify itself as something
> other than Intel and AMD.

I don't recall if the 1st gen 64-bit Netburst had SSE3/SSSE3 or not, but if it
didn't then emulating that should be close enough to generic x86_64.  Otherwise
I'd prefer qemu to choose a unique vendor, unique family, or some high unused
model (e.g. all-bits-one).


[Bug target/61570] -march=native CPU you selected does not support x86-64 instruction under QEMU

2014-06-20 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61570

--- Comment #1 from Mikael Pettersson  ---
Well, qemu seems confused (as usual).  Having "lm" and "lahf_lm"in the CPUID
feature flags and a 48-bit virtual address space implies being 64-bit, but
Intel Family 6 Model 13 implies being the 32-bit only Pentium-M.

Since real HW doesn't get this confused I'd classify it as a qemu bug.  (We've
seen several similar "impossible" cases in LKML.)


[Bug middle-end/57625] internal compiler error: seg fault when building gcc 4.7.2

2014-05-25 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57625

--- Comment #6 from Mikael Pettersson  ---
The failure of 4.7 being built w/ --disable-bootstrap by 4.8+ stopped with the
PR54638 fix in r191605.  It's clear that the problem was undefined behaviour in
4.7.2, not a wrong-code error in 4.8+.


[Bug middle-end/57625] internal compiler error: seg fault when building gcc 4.7.2

2014-05-24 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57625

--- Comment #5 from Mikael Pettersson  ---
The failure of gcc-4.8.0 and later to build gcc-4.7.2 w/ --disable-bootstrap
started with r186592.  I'm getting loads of errors from glibc stating that
malloc detects memory corruption in cc1.


[Bug middle-end/57625] internal compiler error: seg fault when building gcc 4.7.2

2014-05-21 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57625

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #4 from Mikael Pettersson  ---
I can reproduce on x86_64-linux (Fedora 18) with gcc-4.8.1, gcc-4.8-20140515,
and gcc-4.9-20140514 as host compilers, and gcc-4.7.2 as the target compiler.


[Bug rtl-optimization/50588] gcc produce incorrect inlined code with -march=athlon -O2

2014-05-18 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=50588

--- Comment #18 from Mikael Pettersson  ---
This is now fixed for 4.8+ by Eric's PR60452 patch.  Verified by backporting
that to 4.6.4 and seeing the bug on this PR's test case go away.


[Bug target/48576] wrong code when accessing variables in a large stack frame

2014-05-18 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48576

--- Comment #8 from Mikael Pettersson  ---
This got fixed for 4.9+ by Bernd Schmidt's "Fix for reloads_unique_chain_p"
patch in r203596: https://gcc.gnu.org/ml/gcc-patches/2013-10/msg01041.html. 
The patch submission describes a problem very similar to this one, so I'm
fairly certain the fix is "proper".

The patch backports easily to 4.8 and 4.7 and fixes the bug there too.


[Bug target/61131] [4.8 regression] ARM -Os: incorrect code generation

2014-05-12 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61131

--- Comment #5 from Mikael Pettersson  ---
(In reply to Stephen Warren from comment #3)
> Or is the definition of
> undefined such that it propagates through the entire expression irrespective
> of the expression's logic?

It is.  Once execution hits undefined behaviour all bets are off.

"Undefined" is not some unspecified value you can choose to ignore.


[Bug middle-end/61045] [4.7/4.8/4.9/4.10 Regression] Wrong constant folding

2014-05-03 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61045

--- Comment #4 from Mikael Pettersson  ---
According to my bisection it did start with r117931.


[Bug middle-end/61045] [4.7/4.8/4.9/4.10 Regression] Wrong constant folding

2014-05-03 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61045

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #2 from Mikael Pettersson  ---
Fails also with gcc 4.3.6, works with gcc 4.2.4 and 4.1.2.


[Bug bootstrap/60830] [4.9 Regression] ICE on bootstrapping on cygwin

2014-04-27 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60830

--- Comment #46 from Mikael Pettersson  ---
Using a binutils with the proposed patch for binutils' PR 16858 I can now
bootstrap gcc-4.8.2 with --disable-sjlj-exceptions on Cygwin.


[Bug target/60910] New: [4.10 regression] sparc-linux bootstrap failure due to many "invalid conversion from 'int' to 'machine_mode'" errors

2014-04-21 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60910

Bug ID: 60910
   Summary: [4.10 regression] sparc-linux bootstrap failure due to
many "invalid conversion from 'int' to 'machine_mode'"
errors
   Product: gcc
   Version: 4.10.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
      Reporter: mikpelinux at gmail dot com

Attempting to bootstrap gcc-4.10-20140420 (r209538) on sparc64-linux fails
with:

g++ -c   -g -DIN_GCC-fno-exceptions -fno-rtti -fasynchronous-unwind-tables
-W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format
-Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings   -DHAVE_CONFIG_H -I. -I.
-I/mnt/scratch/gcc-4.10-20140420/gcc -I/mnt/scratch/gcc-4.10-20140420/gcc/.
-I/mnt/scratch/gcc-4.10-20140420/gcc/../include
-I/mnt/scratch/gcc-4.10-20140420/gcc/../libcpp/include
-I/home/mikpe/pkgs/linux-sparc64/gmp-5.1.3/include
-I/home/mikpe/pkgs/linux-sparc64/mpfr-3.1.2/include
-I/home/mikpe/pkgs/linux-sparc64/mpc-1.0.2/include 
-I/mnt/scratch/gcc-4.10-20140420/gcc/../libdecnumber
-I/mnt/scratch/gcc-4.10-20140420/gcc/../libdecnumber/dpd -I../libdecnumber
-I/mnt/scratch/gcc-4.10-20140420/gcc/../libbacktrace-o sparc.o -MT sparc.o
-MMD -MP -MF ./.deps/sparc.TPo
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c
In file included from /mnt/scratch/gcc-4.10-20140420/gcc/tree-core.h:24:0,
 from /mnt/scratch/gcc-4.10-20140420/gcc/tree.h:23,
 from
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c:27:
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c: In function 'void
sparc_init_modes()':
/mnt/scratch/gcc-4.10-20140420/gcc/machmode.h:183:32: error: invalid conversion
from 'int' to 'machine_mode' [-fpermissive]
? mode_size_inline (MODE) : mode_size[MODE]))
^
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c:4829:8: note: in
expansion of macro 'GET_MODE_SIZE'
if (GET_MODE_SIZE (i) < 4)
^
/mnt/scratch/gcc-4.10-20140420/gcc/machmode.h:183:32: error: invalid conversion
from 'int' to 'machine_mode' [-fpermissive]
? mode_size_inline (MODE) : mode_size[MODE]))
^
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c:4831:13: note: in
expansion of macro 'GET_MODE_SIZE'
else if (GET_MODE_SIZE (i) == 4)
 ^
/mnt/scratch/gcc-4.10-20140420/gcc/machmode.h:183:32: error: invalid conversion
from 'int' to 'machine_mode' [-fpermissive]
? mode_size_inline (MODE) : mode_size[MODE]))
^
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c:4833:13: note: in
expansion of macro 'GET_MODE_SIZE'
else if (GET_MODE_SIZE (i) == 8)
 ^
/mnt/scratch/gcc-4.10-20140420/gcc/machmode.h:183:32: error: invalid conversion
from 'int' to 'machine_mode' [-fpermissive]
? mode_size_inline (MODE) : mode_size[MODE]))
^
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c:4835:13: note: in
expansion of macro 'GET_MODE_SIZE'
else if (GET_MODE_SIZE (i) == 16)
 ^
/mnt/scratch/gcc-4.10-20140420/gcc/machmode.h:183:32: error: invalid conversion
from 'int' to 'machine_mode' [-fpermissive]
? mode_size_inline (MODE) : mode_size[MODE]))
^
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c:4837:13: note: in
expansion of macro 'GET_MODE_SIZE'
else if (GET_MODE_SIZE (i) == 32)
 ^
/mnt/scratch/gcc-4.10-20140420/gcc/machmode.h:183:32: error: invalid conversion
from 'int' to 'machine_mode' [-fpermissive]
? mode_size_inline (MODE) : mode_size[MODE]))
^
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c:4843:8: note: in
expansion of macro 'GET_MODE_SIZE'
if (GET_MODE_SIZE (i) == 4)
^
/mnt/scratch/gcc-4.10-20140420/gcc/machmode.h:183:32: error: invalid conversion
from 'int' to 'machine_mode' [-fpermissive]
? mode_size_inline (MODE) : mode_size[MODE]))
^
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/sparc.c:4845:13: note: in
expansion of macro 'GET_MODE_SIZE'
else if (GET_MODE_SIZE (i) == 8)
 ^
/mnt/scratch/gcc-4.10-20140420/gcc/machmode.h:183:32: error: invalid conversion
from 'int' to 'machine_mode' [-fpermissive]
? mode_size_inline (MODE) : mode_size[MODE]))
^
/mnt/scratch/gcc-4.10-20140420/gcc/config/sparc/spa

[Bug target/60822] Index register overwritten on m68k/coldfire

2014-04-14 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60822

--- Comment #4 from Mikael Pettersson  ---
Switching gcc 4.10 to use LRA instead does not fix this wrong-code.


[Bug bootstrap/60830] ICE on bootstrapping on cygwin

2014-04-13 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60830

--- Comment #2 from Mikael Pettersson  ---
I'm getting a different error bootstrapping the 4.9.0 RC on Cygwin:

checking for C compiler default output file name... 
configure: error: in `/home/mikpe/objdir/i686-pc-cygwin/libgcc':
configure: error: C compiler cannot create executables
See `config.log' for more details.
Makefile:14037: recipe for target 'configure-stage2-target-libgcc' failed
make[2]: *** [configure-stage2-target-libgcc] Error 77
make[2]: Leaving directory '/home/mikpe/objdir'
Makefile:16771: recipe for target 'stage2-bubble' failed
make[1]: *** [stage2-bubble] Error 2
make[1]: Leaving directory '/home/mikpe/objdir'
Makefile:16974: recipe for target 'bootstrap' failed
make: *** [bootstrap] Error 2

Inspecting i686-pc-cygwin/libgcc/config.log shows a number of failed attempts
to run gcc/xgcc:

xgcc: error: unrecognized command line option '-isystem'
xgcc: error: unrecognized command line option '-v'

which eventually causes configure to give up.

This is with cygwin-1.7.28 (32-bit), Windows 7 (64-bit), Core-i7.


[Bug target/60822] Index register overwritten on m68k/coldfire

2014-04-12 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60822

--- Comment #3 from Mikael Pettersson  ---
Started with r140275:

2008-09-11  Andreas Schwab  

   * config/m68k/m68k.h (IRA_COVER_CLASSES): Define.

which seems to enable IRA for M68K.  The code generation difference for the C
test case at this revision is:

--- pr60822-r140274.s   2014-04-12 20:50:32.324607341 +0200
+++ pr60822-r140275.s   2014-04-12 20:46:21.835089754 +0200
@@ -9,10 +9,10 @@
link.w %fp,#0
move.l %d2,-(%sp)
move.l 8(%fp),%a0
-   move.l #80,%d1
-   move.l #174,%d0
-   move.l (%a0,%d1.l),%d1
-   add.l (%a0,%d0.l),%d1
+   move.l #80,%d0
+   move.l #174,%d1
+   move.l (%a0,%d0.l),%d1
+   add.l (%a0,%d1.l),%d1
smi %d0
ext.w %d0
ext.l %d0

I assume this revision merely exposed a pre-existing latent problem.


[Bug target/60822] Index register overwritten on m68k/coldfire

2014-04-12 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60822

--- Comment #2 from Mikael Pettersson  ---
All versions from current 4.10/trunk down to and including 4.4.7 have the bug,
but 4.3.6 does not.  The code from 4.3.6 is similar to the one from 4.4.7, but
due to a subtle ordering difference 4.3.6 works while 4.4.7 does not.


[Bug target/60822] Index register overwritten on m68k/coldfire

2014-04-12 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60822

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
Created attachment 32587
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32587&action=edit
self-contained test case in C

Doesn't need C++, this C version reproduces the wrong-code on m68k-linux with
-mcpu=68010, but not with -mcpu=68020 or higher.  Occurs with gcc 4.9-20140406
and 4.7-20140308 (haven't checked other versions yet).


[Bug tree-optimization/60766] [4.8/4.9 Regression] Wrong optimization with -O2

2014-04-06 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60766

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #4 from Mikael Pettersson  ---
Created attachment 32552
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32552&action=edit
self-contained test case, compilable as C and C++

The wrong-code reproduces for me with gcc 4.7 and 4.8 on x86_64-linux.  For
trunk it was fixed by r204515, which doesn't appear to be a wrong-code fix. 
Backporting r204515 to 4.8 fixes the wrong-code there too, but I haven't tested
it beyond this test case.


[Bug target/60504] [4.9 regression] many Ada testsuite regressions on ARM/Linux

2014-03-26 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60504

--- Comment #12 from Mikael Pettersson  ---
(In reply to Mikael Pettersson from comment #10)
> (In reply to Eric Botcazou from comment #9)
> > That's good news, thanks.  Did you do a testsuite run for all languages?
> 
> Sorry, didn't have time for that -- the repeated 4.9 builds and tests caused
> other build-and-test jobs to pile up and I need to get those done first.

I've now done full before-and-after bootstrap+testsuite runs with
--enable-languages=all,ada,go,obj-c++ on armv5tel-linux-gnueabi: Eric's patch
fixed all Ada regressions, and added no new regressions.


[Bug middle-end/60429] [4.7 Regression] Miscompilation (aliasing) with -finline-functions

2014-03-22 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60429

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #29 from Mikael Pettersson  ---
Richard, your 4.8 backport performs the same call twice in a row on lines 3017
and 3018 in tree-ssa-structalias.c; is that really intentional?

+  /* We have to include all fields that overlap the current
+ field shifted by rhsoffset.  And we include at least
+ the last or the first field of the variable to represent
+ reachability of off-bound addresses, in particular &object + 1,
+ conservatively correct.  */
+  temp = first_or_preceding_vi_for_offset (curr, offset);
+  temp = first_or_preceding_vi_for_offset (curr, offset);


[Bug middle-end/54561] incorrect setjmp -Wclobber diagnostics

2014-03-19 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54561

--- Comment #4 from Mikael Pettersson  ---
(In reply to Matthieu Patou from comment #3)
>   volatile proto_tree *tmptree = NULL;

Try

proto_tree * volatile tmptree = NULL;

It's the variable itself that needs to be volatile, not the memory it points
to.


[Bug ada/60504] [4.9 regression] many Ada testsuite regressions with gcc-4.9-20140309 on armv5tel-linux-gnueabi

2014-03-18 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60504

--- Comment #10 from Mikael Pettersson  ---
(In reply to Eric Botcazou from comment #9)
> That's good news, thanks.  Did you do a testsuite run for all languages?

Sorry, didn't have time for that -- the repeated 4.9 builds and tests caused
other build-and-test jobs to pile up and I need to get those done first.


[Bug ada/60504] [4.9 regression] many Ada testsuite regressions with gcc-4.9-20140309 on armv5tel-linux-gnueabi

2014-03-18 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60504

--- Comment #8 from Mikael Pettersson  ---
(In reply to Mikael Pettersson from comment #5)
> Sorry, no joy.  With Eric's suggested patch I still got:

Correction: Eric's suggested patch does work.  In my previous attempt I applied
his patch and only did an incremental rebuild, and that didn't resolve all
testsuite regressions.  Now I've done a clean build from scratch and the
testsuite regressions are in fact gone.


[Bug rtl-optimization/57425] [4.8 Regression] RTL alias analysis unprepared to handle stack slot sharing

2014-03-17 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57425

--- Comment #18 from Mikael Pettersson  ---
Bill, the backport patch has now been approved:
http://gcc.gnu.org/ml/gcc-patches/2014-03/msg00792.html


[Bug ada/60504] [4.9 regression] many Ada testsuite regressions with gcc-4.9-20140309 on armv5tel-linux-gnueabi

2014-03-17 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60504

--- Comment #7 from Mikael Pettersson  ---
(In reply to Bernd Edlinger from comment #6)
> that would be r208419 and r208150

Reverting r208150 + r208419 and rebuilding from scratch eliminated all acats
regressions.


[Bug c++/60516] [4.9/4.8 regression]: cc1plus crashes compiling a method with a huge struct as argument

2014-03-16 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60516

--- Comment #4 from Mikael Pettersson  ---
Started with r171890.


[Bug c++/60516] cc1plus crashes compiling a method with a huge struct as argument

2014-03-16 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60516

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
I can reproduce with gcc-4.8.2 crosses targeting x86_64-w64-mingw32 -m32, both
on x86_64-linux and on i686-pc-cygwin.  On the Linux host the crash looks like:

pr60516.cc: In member function 'void Bar::foo(huge)':
pr60516.cc:8:5: internal compiler error: Segmentation fault
 }
 ^
0x7d5e8f crash_signal
/tmp/gcc-4.8.2/gcc/toplev.c:332
0x78e831 copy_rtx(rtx_def*)
/tmp/gcc-4.8.2/gcc/rtl.c:235
0x98963e ix86_expand_epilogue(int)
/tmp/gcc-4.8.2/gcc/config/i386/i386.c:11168
0xa1723f gen_epilogue()
/tmp/gcc-4.8.2/gcc/config/i386/i386.md:11858
0x674012 thread_prologue_and_epilogue_insns
/tmp/gcc-4.8.2/gcc/function.c:6458
0x674012 rest_of_handle_thread_prologue_and_epilogue
/tmp/gcc-4.8.2/gcc/function.c:6973

Without -m32 it doesn't crash.  gcc-4.7.3 also crashes, but gcc-4.6.1 and 4.5.3
do not.


[Bug ada/60504] [4.9 regression] many Ada testsuite regressions with gcc-4.9-20140309 on armv5tel-linux-gnueabi

2014-03-15 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60504

--- Comment #5 from Mikael Pettersson  ---
Sorry, no joy.  With Eric's suggested patch I still got:

=== acats tests ===
Running chapter a ...
FAIL:   a87b59a
Running chapter c2 ...
Running chapter c3 ...
FAIL:   c380004
Running chapter c4 ...
Running chapter c5 ...
Running chapter c6 ...
FAIL:   c64201b
FAIL:   c64201c
Running chapter c7 ...
FAIL:   c761007
Running chapter c8 ...
FAIL:   c85018a
FAIL:   c85018b
Running chapter c9 ...
FAIL:   c930001
FAIL:   c93004a
FAIL:   c93004b
FAIL:   c93004c
FAIL:   c93004d
FAIL:   c93004f
FAIL:   c940013
FAIL:   c94001a
FAIL:   c94001b
FAIL:   c94001c
FAIL:   c94001f
FAIL:   c94002a
FAIL:   c94002g
FAIL:   c94007a
FAIL:   c94008a
FAIL:   c94008b
FAIL:   c94008c
FAIL:   c94008d
FAIL:   c94020a

which is an improvement, but not a complete fix.  At that point I aborted the
whole thing.  All FAILs were "Execution terminated by abort of environment
task".  I'm going to try a revert of the unwind changes next, as soon as I can
identify the corresponding svn revision numbers.


[Bug rtl-optimization/57425] [4.8 Regression] RTL alias analysis unprepared to handle stack slot sharing

2014-03-15 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57425

--- Comment #17 from Mikael Pettersson  ---
The backport patch has now been submitted:
http://gcc.gnu.org/ml/gcc-patches/2014-03/msg00758.html


[Bug ada/60504] [4.9 regression] many Ada testsuite regressions with gcc-4.9-20140309 on armv5tel-linux-gnueabi

2014-03-15 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60504

--- Comment #4 from Mikael Pettersson  ---
(In reply to Eric Botcazou from comment #3)
> > Nothing obvious stands out.  I presume that exceptions cannot be caught?
> 
> OK, it's presumably http://gcc.gnu.org/ml/gcc/2013-12/msg00157.html but no
> ARM maintainer has stepped in yet. :-(  Try this:

I'm trying this right now.


[Bug ada/51483] [4.7/4.8/4.9 regression] cstand.adb:Register_Float_Type makes invalid assumption about FP modes

2014-03-13 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51483

--- Comment #25 from Mikael Pettersson  ---
Thanks!


[Bug rtl-optimization/57425] [4.8 Regression] RTL alias analysis unprepared to handle stack slot sharing

2014-03-13 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57425

--- Comment #15 from Mikael Pettersson  ---
Bill,

I can submit the patch on Saturday (too busy before then), but I don't have
commit rights so someone else will have to commit it (assuming it's approved).

/Mikael


[Bug rtl-optimization/57425] [4.8 Regression] RTL alias analysis unprepared to handle stack slot sharing

2014-03-13 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57425

--- Comment #13 from Mikael Pettersson  ---
Created attachment 32343
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32343&action=edit
4.8 backport of Joern's fixes

This is the backport of Joern's fixes to 4.8 I did last summer.  Tested w/o
regressions on x86_64, sparc64, powerpc64, armv5tel, and m68k.


[Bug ada/60504] New: [4.9 regression] many Ada testsuite regressions with gcc-4.9-20140309 on armv5tel-linux-gnueabi

2014-03-11 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60504

Bug ID: 60504
   Summary: [4.9 regression] many Ada testsuite regressions with
gcc-4.9-20140309 on armv5tel-linux-gnueabi
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: ada
  Assignee: unassigned at gcc dot gnu.org
  Reporter: mikpelinux at gmail dot com

With gcc-4.9-20140309 I see the following testsuite regressions on
armv5tel-linux-gnueabi compared to the previous working snapshot
gcc-4.9-20140223 (the intermediate 4.9-20130302 didn't bootstrap due to
PR60411):

=== acats tests ===
+FAIL:  a87b59a
+FAIL:  c32111a
+FAIL:  c32111b
+FAIL:  c32112b
+FAIL:  c32113a
+FAIL:  c32115a
+FAIL:  c32115b

(hundreds more here)

+FAIL:  cxg2020
+FAIL:  cz1102a
+FAIL:  cz1103a

=== acats Summary ===
-# of expected passes   2320
-# of unexpected failures   0
+# of expected passes   1625
+# of unexpected failures   695

and

=== gnat tests ===


 Running target unix
+FAIL: gnat.dg/aliased_prefix_accessibility.adb execution test
+FAIL: gnat.dg/conv_bug.adb execution test
+FAIL: gnat.dg/curr_task.adb execution test
+FAIL: gnat.dg/expect1.adb execution test
+FAIL: gnat.dg/handle_and_return.adb execution test
+FAIL: gnat.dg/invalid1.adb execution test
+FAIL: gnat.dg/iprot_test.adb execution test
+FAIL: gnat.dg/missing_acc_check.adb execution test
+FAIL: gnat.dg/nested_controlled_alloc.adb execution test
+FAIL: gnat.dg/not_null.adb execution test
+FAIL: gnat.dg/null_pointer_deref1.adb execution test
+FAIL: gnat.dg/null_pointer_deref2.adb execution test
+FAIL: gnat.dg/null_pointer_deref3.adb execution test
+FAIL: gnat.dg/opt22.adb execution test
+FAIL: gnat.dg/overflow_sum.adb execution test
+FAIL: gnat.dg/regpat1.adb execution test
+FAIL: gnat.dg/stack_check1.adb execution test
+FAIL: gnat.dg/stack_check2.adb execution test
+FAIL: gnat.dg/tag1.adb execution test
+FAIL: gnat.dg/test_enum_io.adb execution test
+FAIL: gnat.dg/test_fixed_io.adb execution test
+FAIL: gnat.dg/test_image.adb execution test
+XPASS: gnat.dg/test_raise_from_pure.adb execution test
+FAIL: gnat.dg/timer_cancel.adb execution test

=== gnat Summary ===

-# of expected passes   1200
-# of expected failures 19
+# of expected passes   1177
+# of unexpected failures   23
+# of unexpected successes  1
+# of expected failures 18
 # of unsupported tests 13

The first one was

splitting /mnt/scratch/objdir49/gcc/testsuite/ada/acats/tests/a/a87b59a.ada
into:
   a87b59a.adb
BUILD a87b59a.adb
gnatmake --GCC="/mnt/scratch/objdir49/gcc/xgcc -B/mnt/scratch/objdir49/gcc/"
-gnatws -O2 -gnat95 -I/mnt/scratch/objdir49/gcc/testsuite/ada/acats/support
a87b59a.adb -largs --GCC="/mnt/scratch/objdir49/gcc/xgcc
-B/mnt/scratch/objdir49/gcc/"
/mnt/scratch/objdir49/gcc/xgcc -c -B/mnt/scratch/objdir49/gcc/ -gnatws -O2
-gnat95 -I/mnt/scratch/objdir49/gcc/testsuite/ada/acats/support a87b59a.adb
gnatbind -I/mnt/scratch/objdir49/gcc/testsuite/ada/acats/support -x a87b59a.ali
gnatlink a87b59a.ali -O2 --GCC=/mnt/scratch/objdir49/gcc/xgcc
-B/mnt/scratch/objdir49/gcc/
RUN a87b59a

,.,. A87B59A ACATS 2.5 14-03-10 20:37:01
 A87B59A CHECK THAT BECAUSE A GENERIC ACTUAL PROGRAM PARAMETER MUST 
BE A SUBPROGRAM, AN ENUMERATION LITERAL, OR AN ENTRY
WITH THE SAME PARAMETER AND RESULT TYPE PROFILE AS THE
FORMAL PARAMETER, AN OVERLOADED NAME APPEARING AS AN
ACTUAL PARAMETER CAN BE RESOLVED.

Execution terminated by abort of environment task
FAIL:   a87b59a

The last one was
Executing on host: /mnt/scratch/objdir49/gcc/gnatmake
--GCC=/mnt/scratch/objdir49/gcc/xgcc
--GNATBIND=/mnt/scratch/objdir49/gcc/gnatbind
--GNATLINK=/mnt/scratch/objdir49/gcc/gnatlink -cargs
-B/mnt/scratch/objdir49/gcc -largs --GCC=/mnt/scratch/objdir49/gcc/xgcc\
-B/mnt/scratch/objdir49/gcc\  -margs
--RTS=/mnt/scratch/objdir49/armv5tel-unknown-linux-gnueabi/./libada -q -f
/mnt/scratch/gcc-4.9-20140309/gcc/testsuite/gnat.dg/timer_cancel.adb 
-fno-diagnostics-show-caret -fdiagnostics-color=never -lm   -o
./timer_cancel.exe(timeout = 300)
spawn -ignore SIGHUP /mnt/scratch/objdir49/gcc/gnatmake
--GCC=/mnt/scratch/objdir49/gcc/xgcc
--GNATBIND=/mnt/scratch/objdir49/gcc/gnatbind
--GNATLINK=/mnt/scratch/objdir49/gcc/gnatlink -cargs
-B/mnt/scratch/objdir49/gcc -largs --GCC=/mnt/scratch/objdir49/gcc/xgcc
-B/mnt/scratch/objdir49/gcc  -margs
--RTS=/mnt/scratch/objdir49/armv5tel-unknown-linux-gnueabi/./libada -q -f
/mnt/scratch/gcc-4.9-20140309/gcc/testsuite/gnat.dg/timer_cancel.adb
-fno-diagnostics-show-caret -fdiagnostics-color=never -lm -o ./timer_cancel.exe
Executing on host: /mnt/scratch/objdir49/gcc/gnatclean -c -q -n ./timer_cancel 
 (timeout = 300)
spawn -ignore SIGHUP /mnt/scratch/objdir

[Bug tree-optimization/60452] [4.8/4.9 Regression] wrong code at -O1 on x86_64-linux-gnu (affecting trunk and 4.8.x)

2014-03-07 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60452

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #5 from Mikael Pettersson  ---
(In reply to Jakub Jelinek from comment #2)
> The problem is that ifcvt.c doesn't consider e[131072], clearly out of bound
> access to an automatic array, as possibly trapping/faulting.

Thus this one looks related to PR50588.


[Bug ada/60411] ADA canadian cross build fails.

2014-03-04 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
I got a similar failure trying to bootstrap gcc-4.9-20140302 (r208262) natively
on armv5tel-linux-gnueabi:

../../gnatbind -I- -I../rts -I. -I/mnt/scratch/gcc-4.9-20140302/gcc/ada -o
b_gnatm.adb gnatmake.ali
../../xgcc -B../../ -c -g -O2 -W -Wall  -gnatpg -gnata -I- -I../rts -I.
-I/mnt/scratch/gcc-4.9-20140302/gcc/ada -gnatws -gnatyN \
b_gnatm.adb -o b_gnatm.o
../../xg++ -B../../
-B../../../armv5tel-unknown-linux-gnueabi/libstdc++-v3/src/.libs
-B../../../armv5tel-unknown-linux-gnueabi/libstdc++-v3/libsupc++/.libs
-L../../../armv5tel-unknown-linux-gnueabi/libstdc++-v3/src/.libs
-L../../../armv5tel-unknown-linux-gnueabi/libstdc++-v3/libsupc++/.libs
-static-libstdc++ -static-libgcc -I- -I../rts -I.
-I/mnt/scratch/gcc-4.9-20140302/gcc/ada  -DIN_GCC  -g -O2 -W -Wall -o
../../gnatmake b_gnatm.o a-except.o ali.o ali-util.o aspects.o s-casuti.o
alloc.o atree.o binderr.o butil.o casing.o csets.o debug.o elists.o einfo.o
errout.o erroutc.o errutil.o err_vars.o fmap.o fname.o fname-uf.o fname-sf.o
gnatmake.o gnatvsn.o hostparm.o interfac.o i-c.o i-cstrin.o krunch.o lib.o
make.o makeusg.o makeutl.o mlib.o mlib-fil.o mlib-prj.o mlib-tgt.o
mlib-tgt-specific.o mlib-utl.o namet.o nlists.o opt.o osint.o osint-m.o
output.o prj.o prj-attr.o prj-attr-pm.o prj-com.o prj-dect.o prj-env.o
prj-conf.o prj-pp.o prj-err.o prj-ext.o prj-nmsc.o prj-pars.o prj-part.o
prj-proc.o prj-strt.o prj-tree.o prj-util.o restrict.o rident.o s-exctab.o
s-secsta.o s-stalib.o s-stoele.o scans.o scng.o sdefault.o sfn_scan.o
s-purexc.o s-htable.o scil_ll.o sem_aux.o sinfo.o sinput.o sinput-c.o
sinput-p.o snames.o stand.o stringt.o styleg.o stylesw.o system.o validsw.o
switch.o switch-m.o table.o targparm.o tempdir.o tree_io.o types.o uintp.o
uname.o urealp.o usage.o widechar.o  ../link.o ../targext.o ../../ggc-none.o
../../libcommon-target.a ../../libcommon.a ../../../libcpp/libcpp.a
../rts/libgnat.a   ../../../libbacktrace/.libs/libbacktrace.a
../../../libiberty/libiberty.a  
make.o: In function
`make__add_source_directories__get_source_dirs__for_projects__recursive_check_context__name_id_set__reverse_iterate':
/mnt/scratch/objdir49/gcc/ada/tools/../rts/a-coorse.adb:1913: undefined
reference to `__gnat_raise_nodefer_with_msg'
make.o: In function
`make__add_source_directories__get_source_dirs__for_projects__recursive_check_context__name_id_set__iterate':
/mnt/scratch/objdir49/gcc/ada/tools/../rts/a-coorse.adb:1296: undefined
reference to `__gnat_raise_nodefer_with_msg'
make.o: In function
`make__add_source_directories__get_source_dirs__for_projects__recursive_check_context__name_id_set__element_keys__ceilingXbnnn':
/mnt/scratch/objdir49/gcc/ada/tools/../rts/a-crbtgk.adb:82: undefined reference
to `__gnat_raise_nodefer_with_msg'
make.o: In function
`make__add_source_directories__get_source_dirs__for_projects__recursive_check_context__name_id_set__element_keys__floorXbnnn':
/mnt/scratch/objdir49/gcc/ada/tools/../rts/a-crbtgk.adb:190: undefined
reference to `__gnat_raise_nodefer_with_msg'
make.o: In function
`make__add_source_directories__get_source_dirs__for_projects__recursive_check_context__name_id_set__element_keys__findXbnnn':
/mnt/scratch/objdir49/gcc/ada/tools/../rts/a-crbtgk.adb:142: undefined
reference to `__gnat_raise_nodefer_with_msg'
make.o:/mnt/scratch/objdir49/gcc/ada/tools/../rts/a-coorse.adb:1913: more
undefined references to `__gnat_raise_nodefer_with_msg' follow
collect2: error: ld returned 1 exit status
make[3]: *** [../../gnatmake] Error 1
make[3]: Leaving directory `/mnt/scratch/objdir49/gcc/ada/tools'
make[2]: *** [gnattools-native] Error 2
make[2]: Leaving directory `/mnt/scratch/objdir49/gnattools'
make[1]: *** [all-gnattools] Error 2
make[1]: Leaving directory `/mnt/scratch/objdir49'
make: *** [bootstrap] Error 2

The previous weekly snapshot, gcc-4.9-20140223, built fine.


[Bug c/60388] Program received signal SIGSEGV, Segmentation fault. 0xb7fb62ff in __pthread_create_2_1

2014-03-02 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60388

--- Comment #1 from Mikael Pettersson  ---
User error.  s/pthread_create(tid,/pthread_create(&tid1[i],/g fixes it, as
gcc's warnings correctly identified.


[Bug other/60336] va_start corrupts 6-th argument in case of empty type used before the format string

2014-02-25 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60336

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
Created attachment 32212
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32212&action=edit
pre-processed test case, valid C and C++

The following is a pre-processed and simplified test case, tweaked to compile
as both C and C++.  As C it succeeds, as C++ it fails.  Tested with gcc/g++
4.8.2 on x86_64-linux.


[Bug middle-end/52306] [4.8 regression] ICE in cselib_record_set, at cselib.c:2158

2014-02-23 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52306

--- Comment #32 from Mikael Pettersson  ---
(In reply to Andreas Schwab from comment #31)
> After backporting the patch to 4.8 there is still a package that fails with
> the same error, though it doesn't fail with 4.9.

This ICE stopped on trunk with Bin Cheng's "Compute, cache and use cost of
auto-increment rtx patterns in IVOPT" patch in r205015, see also

http://gcc.gnu.org/ml/gcc-patches/2013-11/msg00156.html

Backporting this too to 4.8 stops the ICE there for this test case.  However,
this patch is just a missed-optimization tweak in ivopts, so I suspect it hides
the underlying bug rather than fixing it.


[Bug rtl-optimization/60307] define_cond_exec with cc0 comparison generates wrong code, missing insn that sets cc0

2014-02-22 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60307

--- Comment #1 from Mikael Pettersson  ---
Which target is this?  Can you provide a test case?


[Bug tree-optimization/60229] wrong code at -O2 and -O3 on x86_64-linux-gnu

2014-02-17 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60229

--- Comment #3 from Mikael Pettersson  ---
Technically there is an overflow there.  But GCC defines conversion to a
smaller signed integer type, when the value cannot be represented in that
smaller type, as a non-signalling truncation.  Still, portable code mustn't
rely on that.


[Bug c/13029] [3.4 Regression] static consts and -Wunused-variable

2014-02-17 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13029

--- Comment #6 from Mikael Pettersson  ---
(In reply to Chengnian Sun from comment #4)
> May I ask what is the design rational of not warning unused static const
> variables?  

See PR28901.  There are cases of unused static const where the warning isn't
wanted, and so far the decision has been to favour those over the cases where
the warning _is_ wanted and would have detected real bugs.  Sigh.


[Bug ada/60174] ICE on ACATS cc3305a

2014-02-13 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60174

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #2 from Mikael Pettersson  ---
I got the exact same error on armv5tel-linux-gnueabi with 4.9-20140209 aka
r207646.  The previous weekly snapshot, 4.9-20140202 aka r207409, was Ok.


[Bug ada/60078] acats c761007 fails on ARM

2014-02-05 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60078

--- Comment #5 from Mikael Pettersson  ---
(In reply to Eric Botcazou from comment #4)
> > This passes for me on armv5tel-linux-gnueabi with gcc trunk/4.8/4.7, on real
> > HW (Kirkwood), glibc-2.17, linux-3.13 kernel.
> 
> Single or multi core?

Single core, alas.


[Bug ada/60078] acats c761007 fails on ARM

2014-02-05 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60078

--- Comment #3 from Mikael Pettersson  ---
This passes for me on armv5tel-linux-gnueabi with gcc trunk/4.8/4.7, on real HW
(Kirkwood), glibc-2.17, linux-3.13 kernel.


[Bug target/59952] -march=core-avx2 should not enable RTM

2014-01-27 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59952

--- Comment #5 from Mikael Pettersson  ---
(In reply to Thiago Macieira from comment #4)
> (In reply to Mikael Pettersson from comment #3)
> > There are also Haswells that lack BMI2.  I updated our dynamic binary
> > instrumentation engine for AVX2 about a year ago, but while our Haswell box
> > at the time had AVX2 it didn't have BMI2 etc, causing Intel's MKL to refuse
> > to enter it AVX2 code paths.  So testing had to be limited to small
> > assembly-coded kernels.
> 
> Are you sure? Unfortunately, ark.intel.com does not list BMI instruction
> level.

Yes I'm sure.  According to my notes the processor was a 2.0 GHz 4c/8t
i7-4765T.  It may have been an engineering sample, this was at my previous job
and I can't access the machine any more.


[Bug target/59952] -march=core-avx2 should not enable RTM

2014-01-27 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59952

--- Comment #3 from Mikael Pettersson  ---
There are also Haswells that lack BMI2.  I updated our dynamic binary
instrumentation engine for AVX2 about a year ago, but while our Haswell box at
the time had AVX2 it didn't have BMI2 etc, causing Intel's MKL to refuse to
enter it AVX2 code paths.  So testing had to be limited to small assembly-coded
kernels.


[Bug c/59946] -mpcrel -O2 produces illegal asm code

2014-01-26 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59946

--- Comment #2 from Mikael Pettersson  ---
Reproduced with m68k-elf and m68k-linux toolchains built from binutils-2.23.2
and gcc-4.9-20140119, 4.8.2, and 4.7.3.  Removing "-m68000" causes the ".l"
suffix to disappear and gas to accept the generated code.


[Bug middle-end/59719] Too much space allocated to unions containing variable length arrays

2014-01-08 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59719

--- Comment #1 from Mikael Pettersson  ---
Related to / dup of PR28865 and PR57180 ?


[Bug c/59674] On m68k and vax variables stack variables with > MAX_STACK_ALIGNMENT make ssp fail

2014-01-04 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59674

--- Comment #5 from Mikael Pettersson  ---
(In reply to Christos Zoulas from comment #4)
> My guess is that m68k-linux is not using the SVR4 ABI, i.e. it does not
> require long long and double to be aligned on a doubleword boundary.

That is correct, m68k-linux has looser alignment rules than most other archs. 
Which is why I also tested vax-linux, hoping that its ABI would be more in line
with other VAX targets.


[Bug c/59674] On m68k and vax variables stack variables with > MAX_STACK_ALIGNMENT make ssp fail

2014-01-04 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59674

--- Comment #3 from Mikael Pettersson  ---
I tested both targets with cross compilers from x86_64-linux.  I also tested
natively on m68k-linux.


[Bug c/59674] On m68k and vax variables stack variables with > MAX_STACK_ALIGNMENT make ssp fail

2014-01-04 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59674

--- Comment #1 from Mikael Pettersson  ---
Works, as in generates OK looking code w/o issuing any diagnostics, on both
m68k-linux and vax-linux for me.  A NetBSD issue?


[Bug middle-end/52306] ICE in cselib_record_set, at cselib.c:2158

2013-12-19 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52306

--- Comment #24 from Mikael Pettersson  ---
So where does that leave us?  Disable -fauto-inc-dec by default, or try to make
m68k work with LRA (which hopefully should avoid this reload bug)?


[Bug c/52773] internal error: in replace_pseudos_in, at reload1.c:577

2013-12-18 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52773

--- Comment #9 from Mikael Pettersson  ---
(In reply to fdarkangel from comment #8)
> Persists in gcc 4.8.2.

Try Bernd's patch, see link in comment #7.


[Bug bootstrap/59536] New: [4.9 regression] internal compiler error: in cselib_record_set, at cselib.c:2376 breaks m68k-linux bootstrap

2013-12-17 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59536

Bug ID: 59536
   Summary: [4.9 regression] internal compiler error: in
cselib_record_set, at cselib.c:2376 breaks m68k-linux
bootstrap
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
  Assignee: unassigned at gcc dot gnu.org
  Reporter: mikpelinux at gmail dot com

Attempting to bootstrap gcc-4.9-20131215 (r206004) on m68k-linux fails with:

/mnt/scratch/objdir49/./prev-gcc/xg++ -B/mnt/scratch/objdir49/./prev-gcc/
-B/mnt/scratch/install49/m68k-unknown-linux-gnu/bin/ -nostdinc++
-B/mnt/scratch/objdir49/prev-m68k-unknown-linux-gnu/libstdc++-v3/src/.libs
-B/mnt/scratch/objdir49/prev-m68k-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-I/mnt/scratch/objdir49/prev-m68k-unknown-linux-gnu/libstdc++-v3/include/m68k-unknown-linux-gnu
-I/mnt/scratch/objdir49/prev-m68k-unknown-linux-gnu/libstdc++-v3/include
-I/mnt/scratch/gcc-4.9-20131215/libstdc++-v3/libsupc++
-L/mnt/scratch/objdir49/prev-m68k-unknown-linux-gnu/libstdc++-v3/src/.libs
-L/mnt/scratch/objdir49/prev-m68k-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-c   -g -O2 -gtoggle -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 -Werror   -DHAVE_CONFIG_H -I. -I.
-I/mnt/scratch/gcc-4.9-20131215/gcc -I/mnt/scratch/gcc-4.9-20131215/gcc/.
-I/mnt/scratch/gcc-4.9-20131215/gcc/../include
-I/mnt/scratch/gcc-4.9-20131215/gcc/../libcpp/include 
-I/mnt/scratch/gcc-4.9-20131215/gcc/../libdecnumber
-I/mnt/scratch/gcc-4.9-20131215/gcc/../libdecnumber/dpd -I../libdecnumber
-I/mnt/scratch/gcc-4.9-20131215/gcc/../libbacktrace-o
tree-loop-distribution.o -MT tree-loop-distribution.o -MMD -MP -MF
./.deps/tree-loop-distribution.TPo
/mnt/scratch/gcc-4.9-20131215/gcc/tree-loop-distribution.c
/mnt/scratch/gcc-4.9-20131215/gcc/tree-loop-distribution.c: In member function
'virtual unsigned int {anonymous}::pass_loop_distribution::execute()':
/mnt/scratch/gcc-4.9-20131215/gcc/tree-loop-distribution.c:1826:63: internal
compiler error: in cselib_record_set, at cselib.c:2376
   unsigned int execute () { return tree_loop_distribution (); }
   ^
0x80260fa7 cselib_record_set
/mnt/scratch/gcc-4.9-20131215/gcc/cselib.c:2376
0x80261715 cselib_record_sets
/mnt/scratch/gcc-4.9-20131215/gcc/cselib.c:2593
0x8026195b cselib_process_insn(rtx_def*)
/mnt/scratch/gcc-4.9-20131215/gcc/cselib.c:2668
0x804d77b1 reload_cse_regs_1
/mnt/scratch/gcc-4.9-20131215/gcc/postreload.c:222
0x804d731f reload_cse_regs
/mnt/scratch/gcc-4.9-20131215/gcc/postreload.c:68
0x804dc70d rest_of_handle_postreload
/mnt/scratch/gcc-4.9-20131215/gcc/postreload.c:2332
0x804dc789 execute
/mnt/scratch/gcc-4.9-20131215/gcc/postreload.c:2368
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
make[3]: *** [tree-loop-distribution.o] Error 1
make[3]: Leaving directory `/mnt/scratch/objdir49/gcc'
make[2]: *** [all-stage2-gcc] Error 2
make[2]: Leaving directory `/mnt/scratch/objdir49'
make[1]: *** [stage2-bubble] Error 2
make[1]: Leaving directory `/mnt/scratch/objdir49'
make: *** [bootstrap] Error 2

The previous weekly snapshot, gcc-4.9-20131208, bootstrapped fine.

Configured as:
/mnt/scratch/gcc-4.9-20131215/configure --prefix=/mnt/scratch/install49
--enable-bootstrap --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-linker-build-id
--enable-languages=c,c++ --disable-dssi
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre
--enable-libgcj-multifile --disable-java-maintainer-mode
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib
--disable-sjlj-exceptions --disable-libmudflap --disable-plugin --disable-lto
--disable-multilib


[Bug preprocessor/8270] [4.7/4.8/4.9 Regression] back-slash white space newline with comments, no warning

2013-12-12 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8270

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #50 from Mikael Pettersson  ---
(In reply to Andrew Pinski from comment #48)
> (In reply to GoWhoopee from comment #47)
> > Please reconsider and stop gcc from changing our code without our 
> > permission.
> 
> It is not changing your code at all.  Read comment #39 to understand this
> issue at full understanding of the standard.

I'm looking at N1570 section 5.1.1.2 "Translation phases".  Phase 1 only maps
multibyte characters and trigraphs,  Backslash-space-newline is neither so
should be preserved as-is to phase 2.  The splicing in phase 2 then shouldn't
occur because of the space.  Or am I missing something?


[Bug middle-end/59011] [4.7 Regression] ICE in make_decl_rtl, at varasm.c:1147

2013-12-07 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59011

--- Comment #7 from Mikael Pettersson  ---
It appears the test case wasn't added to 4.8 branch.


[Bug middle-end/59134] Infinite loop between store_fixed_bit_field and store_split_bit_field with STRICT_ALIGNMENT

2013-11-24 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59134

--- Comment #2 from Mikael Pettersson  ---
Started with r163189.


[Bug target/59187] internal error with -O2

2013-11-23 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59187

--- Comment #3 from Mikael Pettersson  ---
I can reproduce the ICE with 4.8.1 configured as a cross to x86_64-w64-mingw32
hosted on x86_64-linux, but not with 4.8.2.  Looks like you need to upgrade.


[Bug bootstrap/59206] [4.9 regression] many bootstrap comparison failures on armv5tel-linux-gnueabi

2013-11-21 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59206

Mikael Pettersson  changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Mikael Pettersson  ---
Bootstrap at r205061 succeeded.


[Bug bootstrap/59206] [4.9 regression] many bootstrap comparison failures on armv5tel-linux-gnueabi

2013-11-20 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59206

--- Comment #2 from Mikael Pettersson  ---
(In reply to Richard Earnshaw from comment #1)
> Can you try it again at SVN revision r205061.

Retrying at that rev ...


[Bug bootstrap/59206] New: [4.9 regression] many bootstrap comparison failures on armv5tel-linux-gnueabi

2013-11-20 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59206

Bug ID: 59206
   Summary: [4.9 regression] many bootstrap comparison failures on
armv5tel-linux-gnueabi
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
  Assignee: unassigned at gcc dot gnu.org
  Reporter: mikpelinux at gmail dot com

Attempting to bootstrap gcc-4.9-20131117 on armv5tel-linux-gnueabi fails with
many bootstrap comparison failures:

Comparing stages 2 and 3
warning: gcc/cc1plus-checksum.o differs
warning: gcc/cc1-checksum.o differs
Bootstrap comparison failure!
gcc/rtlanal.o differs
gcc/tree-ssa-loop-ivopts.o differs
gcc/regcprop.o differs
gcc/cfgrtl.o differs
gcc/ubsan.o differs
gcc/reload1.o differs
gcc/tree-loop-distribution.o differs
gcc/build/print-rtl.o differs
gcc/fortran/intrinsic.o differs
gcc/fortran/parse.o differs
gcc/fortran/scanner.o differs
gcc/fortran/simplify.o differs
gcc/fortran/error.o differs
gcc/fortran/resolve.o differs
gcc/expr.o differs
gcc/store-motion.o differs
gcc/tree.o differs
gcc/profile.o differs
gcc/final.o differs
gcc/collect2.o differs
gcc/tree-vrp.o differs
gcc/ada/lib-writ.o differs
gcc/ada/exp_ch7.o differs
gcc/ada/sem_warn.o differs
gcc/ada/bindgen.o differs
gcc/ada/prep.o differs
gcc/ada/rtsfind.o differs
gcc/ada/bcheck.o differs
gcc/ada/targparm.o differs
gcc/ada/scn.o differs
gcc/ada/osint.o differs
gcc/ada/scans.o differs
gcc/ada/sem_dim.o differs
gcc/ada/einfo.o differs
gcc/ada/scos.o differs
gcc/ada/sem_attr.o differs
gcc/ada/rident.o differs
gcc/ada/ali-util.o differs
gcc/ada/csets.o differs
gcc/ada/sem_ch5.o differs
gcc/ada/lib-xref.o differs
gcc/ada/par.o differs
gcc/ada/utils.o differs
gcc/ada/checks.o differs
gcc/ada/restrict.o differs
gcc/ada/sem_prag.o differs
gcc/ada/sem_intr.o differs
gcc/ada/aspects.o differs
gcc/ada/gnatbind.o differs
gcc/ada/cstand.o differs
gcc/ira.o differs
gcc/tree-into-ssa.o differs
gcc/tree-ssa.o differs
gcc/tree-predcom.o differs
gcc/reload.o differs
gcc/print-rtl.o differs
gcc/tree-ssa-math-opts.o differs
gcc/tree-ssa-tail-merge.o differs
gcc/real.o differs
gcc/tree-parloops.o differs
gcc/tree-vect-stmts.o differs
gcc/cp/repo.o differs
gcc/cp/tree.o differs
gcc/cp/typeck.o differs
gcc/gimplify.o differs
gcc/arm.o differs
gcc/tree-ssa-ter.o differs
gcc/regrename.o differs
gcc/tree-ssa-coalesce.o differs
gcc/tree-inline.o differs
gcc/c-family/c-format.o differs
gcc/c-family/c-common.o differs
gcc/ipa-split.o differs
gcc/stor-layout.o differs
libcpp/lex.o differs
libdecnumber/decNumber.o differs
libiberty/regex.o differs
libiberty/pic/regex.o differs
make[2]: *** [compare] Error 1
make[2]: Leaving directory `/mnt/scratch/objdir49'
make[1]: *** [stage3-bubble] Error 2
make[1]: Leaving directory `/mnt/scratch/objdir49'
make: *** [bootstrap] Error 2

The snapshot from two weeks ago, gcc-4.9-20131103, bootstrapped fine.  (I have
20131110 marked as failed too, but I didn't record why, sigh.)

Configured as:
/mnt/scratch/gcc-4.9-20131117/configure --prefix=/mnt/scratch/install49
--enable-bootstrap --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-languages=c,c++,fortran,ada
--disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre
--enable-libgcj-multifile --disable-java-maintainer-mode
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib
--disable-sjlj-exceptions --with-arch=armv5te --with-tune=xscale
--build=armv5tel-unknown-linux-gnueabi --disable-plugin --disable-lto
--disable-libmudflap


[Bug target/59196] ./configure --with-cpu is broken for some m68k targets

2013-11-19 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59196

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
Yep, reproduced with --target=m68k-elf --with-cpu=m68020-60, affects 4.7.3,
4.8.2, and current 4.9/trunk (didn't check older unmaintained versions).

Care to send a patch (against trunk) to gcc-patches?


[Bug tree-optimization/59139] [4.7/4.8/4.9 Regression] internal compiler error: in get_val_for, at tree-ssa-loop-niter.c:2267

2013-11-16 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59139

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #2 from Mikael Pettersson  ---
Started with r173612.


[Bug c/59138] [4.8/4.9 Regression] possible packed struct miscompile

2013-11-16 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59138

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #2 from Mikael Pettersson  ---
Started with r191302, a fix for missed-optimization PR44194 "struct returned by
value generates useless stores".


[Bug middle-end/59134] Infinite loop between store_fixed_bit_field and store_split_bit_field with STRICT_ALIGNMENT

2013-11-16 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59134

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
The cited testcase ICEs gcc 4.6/4.7/4.8/4.9 for me on sparc64-linux, another
STRICT_ALIGNMENT target.  gcc 4.5 and older don't ICE.


[Bug sanitizer/59009] libsanitizer merge from upstream r191666 breaks bootstrap on powerpc64-linux

2013-11-12 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59009

--- Comment #6 from Mikael Pettersson  ---
(In reply to Kostya Serebryany from comment #5)
> So far we were not even able to reproduce it. 

Building gcc trunk as a cross to ppc64-linux reproduces the build failure for
me.


[Bug sanitizer/59009] libsanitizer merge from upstream r191666 breaks bootstrap on powerpc64-linux

2013-11-11 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59009

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #3 from Mikael Pettersson  ---
Bootstrap of gcc-4.9-20131110 on sparc64-linux is also broken in the same way.


[Bug tree-optimization/58921] [4.9 Regression] ICE with segfault on valid code at -O3 on x86_64-linux-gnu

2013-11-10 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58921

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #2 from Mikael Pettersson  ---
Started with r203842.  With checking it fails on

   gcc_assert (vec_stmt);

in case vect_internal_def of vect_get_vec_def_for_operand.


[Bug tree-optimization/58956] [4.7/4.8/4.9 Regression] wrong code at -O1 and above (affecting gcc 4.6 to trunk)

2013-11-09 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58956

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #2 from Mikael Pettersson  ---
gcc 4.5.4 and 4.4.7 are also broken, but 4.3.6 is Ok.  Started with r142396.

The effect of that revision is that

{
  struct S *i = c;
  *i = foo ();

is compiled as if it had been written

{
  struct S tmp = foo ();
  *c = tmp;

which is wrong since foo may (and in this case does) change c.


[Bug regression/58985] [4.9 Regression]: gcc.dg/pr57518.c scan-rtl-dump-not ira REG_EQUIV...

2013-11-09 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58985

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #8 from Mikael Pettersson  ---
The version of the test case on 4.8 branch is still missing Marcus Shawcroft's
regex fix (r200720), causing it to fail on some targets (including at least
sparc).


[Bug c/58943] wrong calculation of indirect structure member arithmetic via function call

2013-10-31 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58943

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
Created attachment 31127
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31127&action=edit
reduced test case

I believe this bug is real, and a dup or variation of PR48814, the difference
being that PR48814 had a postfix ++ while here we have a compound assignment
(|=).  According to Joseph's comment in
<http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48814#c8> the same interleaving
restrictions apply to ++ and |=.

The bug appears to trigger when the lvalue is a non-scalar.  It doesn't have to
be a struct member, an array element (as in this test case) suffices.


[Bug other/58936] wrong Makefile generated when gmp/mpfr/mpc installed in custom folder

2013-10-31 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58936

--- Comment #3 from Mikael Pettersson  ---
(In reply to Liu Jian from comment #0)
> I configured gcc using:
> ./configure --prefix=$HOME --with-gmp=$HOME --with-mpfr=$HOME
> --with-mpc=$HOME
> When I am compiling gcc 4.8.2, I got error:

Configuring in the gcc source directory itself is not supported.  Try something
like

tar jxf gcc-4.8.2.tar.bz
mkdir objdir
cd objdir
../gcc-4.8.2/configure ...

instead.


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

2013-10-30 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58369

Mikael Pettersson  changed:

   What|Removed |Added

  Known to work||4.9.0
Summary|[4.8/4.9 regression] ICE in |[4.8 regression] ICE in
   |subreg_get_info when|subreg_get_info when
   |compiling boost for |compiling boost for
   |m68k-linux  |m68k-linux
  Known to fail|4.9.0   |4.8.2

--- Comment #6 from Mikael Pettersson  ---
Fixed on trunk so far.


[Bug target/58854] [4.8 regression] "sub sp, fp, #40" hoisted above frame accesses

2013-10-24 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #2 from Mikael Pettersson  ---
Started with r188742.  The code generation difference at that revision is:

@@ -115,16 +115,17 @@
bne .L6
 .L9:
ldr r3, [fp, #-56]
+   sub sp, fp, #40
ldr r2, [fp, #-60]
+   mov r0, sl
str r6, [r3, #0]
ldr r3, [fp, #-52]
str r2, [r3, #0]
-   b   .L8
+   ldmfd   sp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
 .L2:
+   sub sp, fp, #40
mov sl, #0
-.L8:
mov r0, sl
-   sub sp, fp, #40
ldmfd   sp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
 .L28:
b   .L23

Hoisting "sub sp, fp, #40" causes several loads, via FP minus an offset, to
access locations below SP, and thus be vulnerable to clobbers from asynchronous
calls (signal handles in user-space, exception handlers in the kernel as is the
case here).


[Bug tree-optimization/58831] wrong code at -O2 and -O3 on x86_64-linux-gnu in 64-bit mode

2013-10-22 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58831

Mikael Pettersson  changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #1 from Mikael Pettersson  ---
Started with r196174.


[Bug tree-optimization/58830] wrong code at -O3 on x86_64-linux-gnu (affecting 4.8.x, but not trunk or 4.7.x)

2013-10-22 Thread mikpelinux at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58830

--- Comment #2 from Mikael Pettersson  ---
Started with r193882.


<    1   2   3   4   5   >