* src/sparc/v8.S: Make .eh_frame dependent on target word size.
authorJakub Jelinek <jakub@redhat.com>
Mon, 8 Apr 2002 20:24:17 +0000 (22:24 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Mon, 8 Apr 2002 20:24:17 +0000 (22:24 +0200)
From-SVN: r52041

libffi/ChangeLog
libffi/src/sparc/v8.S

index 5233e45395f0be0556172f309cb55f69944836ab..ed235814bfa0bef3ac0120373cfc3bccb5235800 100644 (file)
@@ -1,3 +1,7 @@
+2002-04-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * src/sparc/v8.S: Make .eh_frame dependent on target word size.
+
 2002-04-06  Jason Thorpe  <thorpej@wasabisystems.com>
 
        * configure.in (alpha*-*-netbsd*): Add target.
index 18226430cc479d2f5b5f95c5426a69fe71c812f7..8cccd6e750c3c84b8cfc42efa325c5fced7bf01a 100644 (file)
@@ -94,6 +94,16 @@ longlong:
 .ffi_call_V8_end:
        .size   ffi_call_V8,.ffi_call_V8_end-ffi_call_V8
 
+#ifdef SPARC64
+#define WS 8
+#define nword  xword
+#define uanword        uaxword
+#else
+#define WS 4
+#define nword  long
+#define uanword        uaword
+#endif
+
        .section        ".eh_frame",#alloc,#write
 .LLframe1:
        .uaword .LLECIE1-.LLSCIE1       ! Length of Common Information Entry
@@ -102,22 +112,22 @@ longlong:
        .byte   0x1     ! CIE Version
        .ascii "zR\0"   ! CIE Augmentation
        .byte   0x1     ! uleb128 0x1; CIE Code Alignment Factor
-       .byte   0x7c    ! sleb128 -4; CIE Data Alignment Factor
+       .byte   0x80-WS ! sleb128 -WS; CIE Data Alignment Factor
        .byte   0xf     ! CIE RA Column
        .byte   0x1     ! uleb128 0x1; Augmentation size
        .byte   0x50    ! FDE Encoding (aligned absolute)
        .byte   0xc     ! DW_CFA_def_cfa
        .byte   0xe     ! uleb128 0xe
        .byte   0x0     ! uleb128 0x0
-       .align 4
+       .align  WS
 .LLECIE1:
 .LLSFDE1:
        .uaword .LLEFDE1-.LLASFDE1      ! FDE Length
 .LLASFDE1:
        .uaword .LLASFDE1-.LLframe1     ! FDE CIE offset
-       .align 4
-       .long   .LLFB1
-       .uaword .LLFE1-.LLFB1   ! FDE address range
+       .align  WS
+       .nword  .LLFB1
+       .uanword .LLFE1-.LLFB1  ! FDE address range
        .byte   0x0     ! uleb128 0x0; Augmentation size
        .byte   0x4     ! DW_CFA_advance_loc4
        .uaword .LLCFI0-.LLFB1
@@ -127,5 +137,5 @@ longlong:
        .byte   0x9     ! DW_CFA_register
        .byte   0xf     ! uleb128 0xf
        .byte   0x1f    ! uleb128 0x1f
-       .align 4
+       .align  WS
 .LLEFDE1: