v8.S: Add unwind info.

* src/sparc/v8.S: Add unwind info.
	* src/sparc/v9.S: Likewise.

From-SVN: r51891
This commit is contained in:
Jeff Sturm 2002-04-05 00:40:11 +00:00 committed by Jeff Sturm
parent a5026f6646
commit 3f2261f151
3 changed files with 84 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2002-04-04 Jeff Sturm <jsturm@one-point.com>
* src/sparc/v8.S: Add unwind info.
* src/sparc/v9.S: Likewise.
2002-04-01 Loren J. Rittle <ljrittle@acm.org>
* configure.in: Enable alpha*-*-freebsd*.

View File

@ -36,7 +36,9 @@
ffi_call_V8:
_ffi_call_V8:
.LLFB1:
save %sp, -STACKFRAME, %sp
.LLCFI0:
sub %sp, %i2, %sp ! alloca() space in stack for frame to set up
add %sp, STACKFRAME, %l0 ! %l0 has start of
@ -87,7 +89,43 @@ longlong:
st %o1, [%i4+4]
ret
restore
.LLFE1:
.ffi_call_V8_end:
.size ffi_call_V8,.ffi_call_V8_end-ffi_call_V8
.size ffi_call_V8,.ffi_call_V8_end-ffi_call_V8
.section ".eh_frame",#alloc,#write
.LLframe1:
.uaword .LLECIE1-.LLSCIE1 ! Length of Common Information Entry
.LLSCIE1:
.uaword 0x0 ! CIE Identifier Tag
.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 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
.LLECIE1:
.LLSFDE1:
.uaword .LLEFDE1-.LLASFDE1 ! FDE Length
.LLASFDE1:
.uaword .LLASFDE1-.LLframe1 ! FDE CIE offset
.align 4
.long .LLFB1
.uaword .LLFE1-.LLFB1 ! FDE address range
.byte 0x0 ! uleb128 0x0; Augmentation size
.byte 0x4 ! DW_CFA_advance_loc4
.uaword .LLCFI0-.LLFB1
.byte 0xd ! DW_CFA_def_cfa_register
.byte 0x1e ! uleb128 0x1e
.byte 0x2d ! DW_CFA_GNU_window_save
.byte 0x9 ! DW_CFA_register
.byte 0xf ! uleb128 0xf
.byte 0x1f ! uleb128 0x1f
.align 4
.LLEFDE1:

View File

@ -41,7 +41,9 @@
ffi_call_V9:
_ffi_call_V9:
.LLFB1:
save %sp, -STACKFRAME, %sp
.LLCFI0:
sub %sp, %i2, %sp ! alloca() space in stack for frame to set up
add %sp, STACKFRAME+STACK_BIAS, %l0 ! %l0 has start of
@ -118,8 +120,45 @@ dostruct:
std %f6, [%i4+56]
ret
restore
.LLFE1:
.ffi_call_V9_end:
.size ffi_call_V9,.ffi_call_V9_end-ffi_call_V9
.size ffi_call_V9,.ffi_call_V9_end-ffi_call_V9
.section ".eh_frame",#alloc,#write
.LLframe1:
.uaword .LLECIE1-.LLSCIE1 ! Length of Common Information Entry
.LLSCIE1:
.uaword 0x0 ! CIE Identifier Tag
.byte 0x1 ! CIE Version
.ascii "zR\0" ! CIE Augmentation
.byte 0x1 ! uleb128 0x1; CIE Code Alignment Factor
.byte 0x78 ! sleb128 -8; 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 0xff,0xf ! uleb128 0x7ff
.align 8
.LLECIE1:
.LLSFDE1:
.uaword .LLEFDE1-.LLASFDE1 ! FDE Length
.LLASFDE1:
.uaword .LLASFDE1-.LLframe1 ! FDE CIE offset
.align 8
.xword .LLFB1
.uaxword .LLFE1-.LLFB1 ! FDE address range
.byte 0x0 ! uleb128 0x0; Augmentation size
.byte 0x4 ! DW_CFA_advance_loc4
.uaword .LLCFI0-.LLFB1
.byte 0xd ! DW_CFA_def_cfa_register
.byte 0x1e ! uleb128 0x1e
.byte 0x2d ! DW_CFA_GNU_window_save
.byte 0x9 ! DW_CFA_register
.byte 0xf ! uleb128 0xf
.byte 0x1f ! uleb128 0x1f
.align 8
.LLEFDE1:
#endif