This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug ipa/65006] [5 Regression] 252.eon in SPEC CPU 2000 miscompiled with LTO


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65006

--- Comment #12 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to H.J. Lu from comment #11)
> r220521 miscompiled 252.eon in SPEC CPU 2000 with LTO for both x86-32:
> 
> https://gcc.gnu.org/ml/gcc-testresults/2015-02/msg01063.html
> 
> and x32:
> 
> https://gcc.gnu.org/ml/gcc-testresults/2015-02/msg01047.html
> 
> X86-32 was fixed:
> 
> https://gcc.gnu.org/ml/gcc-testresults/2015-02/msg01417.html
> 
> But not:
> 
> https://gcc.gnu.org/ml/gcc-testresults/2015-02/msg01406.html
> 
> I got
> 
> [hjl@gnu-mic-2 00000002]$ ../00000002/eon_peak.lto chair.control.cook
> chair.camera chair.surfaces chair.cook.ppm ppm pixels_out.cook
> Segmentation fault
> [hjl@gnu-mic-2 00000002]$ gdb ../00000002/eon_peak.lto
> GNU gdb (GDB) Fedora 7.7.1-21.fc20
> Copyright (C) 2014 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "x86_64-redhat-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
> <http://www.gnu.org/software/gdb/documentation/>.
> For help, type "help".
> Type "apropos word" to search for commands related to "word"...
> Reading symbols from ../00000002/eon_peak.lto...done.
> (gdb) r chair.control.cook chair.camera chair.surfaces chair.cook.ppm ppm
> pixels_out.cook
> Starting program:
> /export/project/git/gcc-regression/spec/2000/spec/benchspec/CINT2000/252.eon/
> run/00000002/eon_peak.lto chair.control.cook chair.camera chair.surfaces
> chair.cook.ppm ppm pixels_out.cook
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x0042078c in operator*(ggSpectrum const&, ggSpectrum const&) ()
> Missing separate debuginfos, use: debuginfo-install glibc-2.18-16.0.fc20.x32
> libgcc-4.8.3-7.2.fc20.x86_64 libstdc++-4.8.3-7.2.fc20.x86_64
> (gdb) bt
> #0  0x0042078c in operator*(ggSpectrum const&, ggSpectrum const&) ()
> #1  0x004452d4 in eonImageCalculator::eonImageCalculator() ()
> #2  0x0040378a in main ()
> (gdb) f 0
> #0  0x0042078c in operator*(ggSpectrum const&, ggSpectrum const&) ()
> (gdb) disass
> Dump of assembler code for function _ZmlRK10ggSpectrumS1_:
>    0x00420780 <+0>:	movups (%esi),%xmm0
>    0x00420784 <+4>:	mov    %rdi,%rax
>    0x00420787 <+7>:	movups 0x10(%esi),%xmm1
> => 0x0042078c <+12>:	mulps  (%edx),%xmm0
>    0x00420790 <+16>:	mulps  0x10(%edx),%xmm1
>    0x00420795 <+21>:	movups %xmm0,(%edi)
>    0x00420799 <+25>:	movups %xmm1,0x10(%edi)
>    0x0042079e <+30>:	retq   
> End of assembler dump.
> (gdb) p $edx
> $1 = -13304
> (gdb) p/x $edx
> $2 = 0xffffcc08

Adding -fno-ipa-cp fixes x32.  Fix for PR 65028 isn't complete.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]