This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/52530] New: [4.8 regression] Many 64-bit execution failures on Solaris 10/11 with Sun as
- From: "ro at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 08 Mar 2012 12:56:01 +0000
- Subject: [Bug target/52530] New: [4.8 regression] Many 64-bit execution failures on Solaris 10/11 with Sun as
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52530
Bug #: 52530
Summary: [4.8 regression] Many 64-bit execution failures on
Solaris 10/11 with Sun as
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: ro@gcc.gnu.org
CC: hjl@gcc.gnu.org, ubizjak@gmail.com
Host: i386-pc-solaris2.1[01]
Target: i386-pc-solaris2.1[01]
Build: i386-pc-solaris2.1[01]
Between 20120302 and 20120307, many 64-bit execution tests all over the
testsuite
started to fail on Solaris 10 and 11/x86 when using Sun as. With gas, all is
fine.
E.g.
FAIL: gcc.c-torture/execute/20021120-1.c execution, -O3 -fomit-frame-pointer
-funroll-loops
The test aborts, and can be reproduced with -m64 -O1 -funroll-loops. If I add
printf's to investigate the failure (gdb cannot print optimized-out values
here),
the failure vanishes.
Between .s files for as and gas, there are no codegen differences when using
-fno-dwarf2-cfi-asm.
When I compare the 4.7 and mainline .s files with as, I find lots of changes
like
--- 20021120-1.s 2012-03-08 13:00:25.054484596 +0100
+++ /var/gcc/regression/trunk/10-gcc/build/gcc/testsuite/gcc/20021120-1.s
2012-03-08 12:48:21.890112842 +0100
@@ -534,37 +534,37 @@
movsd %xmm2, gd(,%rcx,8)
cvtsi2ss %eax, %xmm3
movss %xmm3, gf(,%rcx,4)
- leal 1(%rax), %edi
+ leal 1(%eax), %edi
cvtsi2sd %edi, %xmm4
movslq %edi, %r8
movsd %xmm4, gd(,%r8,8)
A reghunt revealed that this was caused by this patch:
2012-03-04 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_print_operand_address): Only handle
zero-extended DImode addresses.
I'm now trying another bootstrap with this change reverted to see if this fixes
all the failures.
Rainer