This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
3.4 PATCH: Disable .dword for IRIX 6 O32
- From: Rainer Orth <ro at TechFak dot Uni-Bielefeld dot DE>
- To: gcc-patches at gcc dot gnu dot org
- Date: Mon, 16 Jun 2003 20:15:04 +0200 (MEST)
- Subject: 3.4 PATCH: Disable .dword for IRIX 6 O32
Many Objective C compilation tests for mips-sgi-irix6.5o32 configured with
native as used to fail:
FAIL: objc/execute/IMP.m compilation, -O0
as1: Error: /var/tmp//ccunsreb.s, line 1: .dword not on double-word boundary
It seems that unlike the documentation states
http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&srch=&fname=/SGI_Developer/MProAsLg_PG/sgi_html/ch08.html
.align 0
.dword <dword>
doesn't remove the automatic alignment provided by the pseudo opcode. To
work around this, I've disabled TARGET_ASM_UNALIGNED_DI_OP for TARGET_IRIX5
(i.e. IRIX 5 and 6 O32).
Bootstrapped without regressions, fixing all objc tests.
Ok for mainline?
Rainer
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University
Fri Jun 13 18:04:29 2003 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
!TARGET_IRIX6]: Define as NULL.
Index: gcc/config/mips/mips.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/mips/mips.c,v
retrieving revision 1.277
diff -u -p -r1.277 mips.c
--- gcc/config/mips/mips.c 9 Jun 2003 07:19:14 -0000 1.277
+++ gcc/config/mips/mips.c 16 Jun 2003 17:59:17 -0000
@@ -837,7 +837,7 @@ const struct mips_cpu_info mips_cpu_info
#undef TARGET_ASM_UNALIGNED_SI_OP
#define TARGET_ASM_UNALIGNED_SI_OP "\t.align 0\n\t.word\t"
#undef TARGET_ASM_UNALIGNED_DI_OP
-#define TARGET_ASM_UNALIGNED_DI_OP "\t.align 0\n\t.dword\t"
+#define TARGET_ASM_UNALIGNED_DI_OP NULL
#endif
#undef TARGET_ASM_FUNCTION_PROLOGUE