This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
x86_64 specific fixes
- From: Jan Hubicka <jh at suse dot cz>
- To: gcc-patches at gcc dot gnu dot org, patches at x86-64 dot org
- Date: Tue, 12 Mar 2002 15:42:39 +0100
- Subject: x86_64 specific fixes
Hi,
I am checking in the attached patch as obvious to mainline and 3.1 branch.
First hunk fixed uninitialized memory access in x86_64 specific argument
handling code and second hunk avoid abort in f77 on x86_64.
Tue Mar 12 15:40:57 CET 2002 Jan Hubicka <jh@suse.cz>
* i386.c (construct_container): Fixx boundary check.
Tue Mar 12 15:41:19 CET 2002 Bo Thorsen <bo@suse.de>
* target.h (FFETARGET_32bit_longs): Undefine on x86_64.
Index: config/i386/i386.c
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/config/i386/i386.c,v
retrieving revision 1.353.4.3
diff -c -3 -p -r1.353.4.3 i386.c
*** config/i386/i386.c 4 Mar 2002 15:45:16 -0000 1.353.4.3
--- config/i386/i386.c 12 Mar 2002 14:29:45 -0000
*************** construct_container (mode, type, in_retu
*** 2010,2016 ****
sse_regno++;
break;
case X86_64_SSE_CLASS:
! if (i < n && class[i + 1] == X86_64_SSEUP_CLASS)
tmpmode = TImode, i++;
else
tmpmode = DImode;
--- 2010,2016 ----
sse_regno++;
break;
case X86_64_SSE_CLASS:
! if (i < n - 1 && class[i + 1] == X86_64_SSEUP_CLASS)
tmpmode = TImode, i++;
else
tmpmode = DImode;
Index: f/target.h
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/f/target.h,v
retrieving revision 1.14
diff -c -3 -p -r1.14 target.h
*** f/target.h 21 Oct 2001 14:55:10 -0000 1.14
--- f/target.h 12 Mar 2002 14:29:49 -0000
*************** the Free Software Foundation, 59 Temple
*** 234,240 ****
#define FFETARGET_f2cTYLOGICAL2 13
#define FFETARGET_f2cTYQUAD 14
! #if !defined(__alpha__) && (!defined (_ARCH_PPC) || !defined (__64BIT__)) && (!defined(__sparc__) || (!defined(__sparcv9) && !defined(__arch64__))) && (!defined(__ia64__) || !defined(__LP64__)) && (!defined(__hppa__) || !defined(__LP64__)) && !defined(__s390x__)
#define FFETARGET_32bit_longs
#endif
--- 234,240 ----
#define FFETARGET_f2cTYLOGICAL2 13
#define FFETARGET_f2cTYQUAD 14
! #if !defined(__alpha__) && (!defined (_ARCH_PPC) || !defined (__64BIT__)) && (!defined(__sparc__) || (!defined(__sparcv9) && !defined(__arch64__))) && (!defined(__ia64__) || !defined(__LP64__)) && (!defined(__hppa__) || !defined(__LP64__)) && !defined(__s390x__) && !defined(__x86_64__)
#define FFETARGET_32bit_longs
#endif