aboutsummaryrefslogtreecommitdiff
path: root/libffi
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2002-04-08 22:24:17 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2002-04-08 22:24:17 +0200
commitdc79864588245d6e7ce0bc417a421cfb3d827c2a (patch)
treeb0db082208a5d01aae5bb6dd2fdfb53629072884 /libffi
parent90def2b26c74d23eb9944c8c32e720adafffd7ef (diff)
downloadgcc-dc79864588245d6e7ce0bc417a421cfb3d827c2a.zip
gcc-dc79864588245d6e7ce0bc417a421cfb3d827c2a.tar.gz
gcc-dc79864588245d6e7ce0bc417a421cfb3d827c2a.tar.bz2
* src/sparc/v8.S: Make .eh_frame dependent on target word size.
From-SVN: r52041
Diffstat (limited to 'libffi')
-rw-r--r--libffi/ChangeLog4
-rw-r--r--libffi/src/sparc/v8.S22
2 files changed, 20 insertions, 6 deletions
diff --git a/libffi/ChangeLog b/libffi/ChangeLog
index 5233e45..ed23581 100644
--- a/libffi/ChangeLog
+++ b/libffi/ChangeLog
@@ -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.
diff --git a/libffi/src/sparc/v8.S b/libffi/src/sparc/v8.S
index 1822643..8cccd6e 100644
--- a/libffi/src/sparc/v8.S
+++ b/libffi/src/sparc/v8.S
@@ -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: