This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Fix x86-64 glibc compilation crash
- From: Jan Hubicka <jh at suse dot cz>
- To: gcc-patches at gcc dot gnu dot org, rth at cygnus dot com
- Date: Mon, 11 Nov 2002 11:59:29 +0100
- Subject: Fix x86-64 glibc compilation crash
Hi,
I am installing this as obivous. The equivalent patch is already
present at 3.2 branch, but somehow got forgotten for 3.3
Mon Nov 11 11:57:45 CET 2002 Jan Hubicka <jh@suse.cz>
* i386.c (construct_container): Fix handling of SSE_CLASS.
Index: i386.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/i386.c,v
retrieving revision 1.489
diff -c -3 -p -r1.489 i386.c
*** i386.c 31 Oct 2002 17:27:02 -0000 1.489
--- i386.c 11 Nov 2002 10:57:25 -0000
*************** construct_container (mode, type, in_retu
*** 2113,2126 ****
sse_regno++;
break;
case X86_64_SSE_CLASS:
! if (i < n && class[i + 1] == X86_64_SSEUP_CLASS)
! tmpmode = TImode, i++;
else
tmpmode = DImode;
exp [nexps++] = gen_rtx_EXPR_LIST (VOIDmode,
gen_rtx_REG (tmpmode,
SSE_REGNO (sse_regno)),
GEN_INT (i*8));
sse_regno++;
break;
default:
--- 2113,2128 ----
sse_regno++;
break;
case X86_64_SSE_CLASS:
! if (i < n - 1 && class[i + 1] == X86_64_SSEUP_CLASS)
! tmpmode = TImode;
else
tmpmode = DImode;
exp [nexps++] = gen_rtx_EXPR_LIST (VOIDmode,
gen_rtx_REG (tmpmode,
SSE_REGNO (sse_regno)),
GEN_INT (i*8));
+ if (tmpmode == TImode)
+ i++;
sse_regno++;
break;
default: