This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
3.4 PATCH: Fix Solaris 2/Intel libffi bootstrap failure
- From: Rainer Orth <ro at TechFak dot Uni-Bielefeld dot DE>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org, java-patches at gcc dot gnu dot org
- Date: Wed, 11 Jun 2003 19:46:28 +0200 (MEST)
- Subject: 3.4 PATCH: Fix Solaris 2/Intel libffi bootstrap failure
Jakub,
this patch
http://gcc.gnu.org/ml/java-patches/2003-q2/msg00117.html
broke mainline bootstrap on Solaris 2/Intel:
The native as can handle neither # comments no .uleb128/.sleb128.
The following patch fixes this and allows the file to assemble.
Bootstrap/Regtest on i386-pc-solaris2.9 in progress; ok for mainline if it
passes?
Rainer
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University
Wed Jun 11 19:00:50 2003 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* src/x86/sysv.S: Avoid gas-only .uleb128/.sleb128 directives.
Use C style comments.
Index: libffi/src/x86/sysv.S
===================================================================
RCS file: /cvs/gcc/gcc/libffi/src/x86/sysv.S,v
retrieving revision 1.6
diff -u -p -r1.6 sysv.S
--- libffi/src/x86/sysv.S 16 May 2003 22:09:22 -0000 1.6
+++ libffi/src/x86/sysv.S 11 Jun 2003 17:45:29 -0000
@@ -1,5 +1,5 @@
/* -----------------------------------------------------------------------
- sysv.S - Copyright (c) 1996, 1998, 2001, 2002 Cygnus Solutions
+ sysv.S - Copyright (c) 1996, 1998, 2001, 2002, 2003 Cygnus Solutions
X86 Foreign Function Interface
@@ -131,52 +131,52 @@ epilogue:
.section .eh_frame,EH_FRAME_FLAGS,@progbits
.Lframe1:
- .long .LECIE1-.LSCIE1 # Length of Common Information Entry
+ .long .LECIE1-.LSCIE1 /* Length of Common Information Entry */
.LSCIE1:
- .long 0x0 # CIE Identifier Tag
- .byte 0x1 # CIE Version
+ .long 0x0 /* CIE Identifier Tag */
+ .byte 0x1 /* CIE Version */
#ifdef __PIC__
- .ascii "zR\0" # CIE Augmentation
+ .ascii "zR\0" /* CIE Augmentation */
#else
- .ascii "\0" # CIE Augmentation
+ .ascii "\0" /* CIE Augmentation */
#endif
- .uleb128 0x1 # CIE Code Alignment Factor
- .sleb128 -4 # CIE Data Alignment Factor
- .byte 0x8 # CIE RA Column
+ .byte 0x1 /* .uleb128 0x1; CIE Code Alignment Factor */
+ .byte 0x7c /* .sleb128 -4; CIE Data Alignment Factor */
+ .byte 0x8 /* CIE RA Column */
#ifdef __PIC__
- .uleb128 0x1 # Augmentation size
- .byte 0x1b # FDE Encoding (pcrel sdata4)
+ .byte 0x1 /* .uleb128 0x1; Augmentation size */
+ .byte 0x1b /* FDE Encoding (pcrel sdata4) */
#endif
- .byte 0xc # DW_CFA_def_cfa
- .uleb128 0x4
- .uleb128 0x4
- .byte 0x88 # DW_CFA_offset, column 0x8
- .uleb128 0x1
+ .byte 0xc /* DW_CFA_def_cfa */
+ .byte 0x4 /* .uleb128 0x4 */
+ .byte 0x4 /* .uleb128 0x4 */
+ .byte 0x88 /* DW_CFA_offset, column 0x8 */
+ .byte 0x1 /* .uleb128 0x1 */
.align 4
.LECIE1:
.LSFDE1:
- .long .LEFDE1-.LASFDE1 # FDE Length
+ .long .LEFDE1-.LASFDE1 /* FDE Length */
.LASFDE1:
- .long .LASFDE1-.Lframe1 # FDE CIE offset
+ .long .LASFDE1-.Lframe1 /* FDE CIE offset */
#ifdef __PIC__
- .long .LFB1-. # FDE initial location
+ .long .LFB1-. /* FDE initial location */
#else
- .long .LFB1 # FDE initial location
+ .long .LFB1 /* FDE initial location */
#endif
- .long .LFE1-.LFB1 # FDE address range
+ .long .LFE1-.LFB1 /* FDE address range */
#ifdef __PIC__
- .uleb128 0x0 # Augmentation size
+ .byte 0x0 /* .uleb128 0x0; Augmentation size */
#endif
- .byte 0x4 # DW_CFA_advance_loc4
+ .byte 0x4 /* DW_CFA_advance_loc4 */
.long .LCFI0-.LFB1
- .byte 0xe # DW_CFA_def_cfa_offset
- .uleb128 0x8
- .byte 0x85 # DW_CFA_offset, column 0x5
- .uleb128 0x2
- .byte 0x4 # DW_CFA_advance_loc4
+ .byte 0xe /* DW_CFA_def_cfa_offset */
+ .byte 0x8 /* .uleb128 0x8 */
+ .byte 0x85 /* DW_CFA_offset, column 0x5 */
+ .byte 0x2 /* .uleb128 0x2 */
+ .byte 0x4 /* DW_CFA_advance_loc4 */
.long .LCFI1-.LCFI0
- .byte 0xd # DW_CFA_def_cfa_register
- .uleb128 0x5
+ .byte 0xd /* DW_CFA_def_cfa_register */
+ .byte 0x5 /* .uleb128 0x5 */
.align 4
.LEFDE1: