diff options
author | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-01-25 18:06:24 +0000 |
---|---|---|
committer | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-01-25 18:06:24 +0000 |
commit | feabd58cbf3080fee17e1792f821582bd08fd8d5 (patch) | |
tree | e5a833a73574d5e62d52532dad7b1f72cb709cba /boehm-gc/rs6000_mach_dep.s | |
parent | 85f6e5ea38ececad9926ac3f1895fb04951ed91e (diff) | |
download | gcc-feabd58cbf3080fee17e1792f821582bd08fd8d5.tar.gz |
* include/gc.h (GC_INIT): Add DATASTART and DATAEND roots on AIX.
* include/private/gcconfig.h (RS6000): Add 64-bit AIX support.
Define USE_GENERIC_PUSH_REGS. Use AIX _data and _end symbols for
DATASTART and DATAEND roots.
* rs6000_mach_dep.s: Add function descriptor and traceback table.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@49218 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'boehm-gc/rs6000_mach_dep.s')
-rw-r--r-- | boehm-gc/rs6000_mach_dep.s | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/boehm-gc/rs6000_mach_dep.s b/boehm-gc/rs6000_mach_dep.s index e0dbe808596..12bf9a84d51 100644 --- a/boehm-gc/rs6000_mach_dep.s +++ b/boehm-gc/rs6000_mach_dep.s @@ -1,4 +1,3 @@ - .csect .set r0,0 .set r1,1 .set r2,2 @@ -32,10 +31,18 @@ .set r30,30 .set r31,31 + .extern .GC_push_one # Mark from machine registers that are saved by C compiler .globl .GC_push_regs +.csect .text[PR] + .align 2 + .globl GC_push_regs + .globl .GC_push_regs +.csect GC_push_regs[DS] +GC_push_regs: + .long .GC_push_regs, TOC[tc0], 0 +.csect .text[PR] .GC_push_regs: - .extern .GC_push_one stu r1,-64(r1) # reserve stack frame mflr r0 # save link register st r0,0x48(r1) @@ -103,3 +110,5 @@ mtlr r0 ai r1,r1,64 br + .long 0 + .byte 0,0,0,0,0,0,0,0 |