diff options
author | Paolo Molaro <lupus@oddwiz.org> | 2006-01-24 14:37:10 +0300 |
---|---|---|
committer | Paolo Molaro <lupus@oddwiz.org> | 2006-01-24 14:37:10 +0300 |
commit | d58dfa185af1d48fb93efdef1d046762f214f0a7 (patch) | |
tree | f851d10caf20d342811d58d624fcdcbd92fe4151 /libgc/powerpc_darwin_mach_dep.s | |
parent | 3be1eb27881d243559d4ab0baf7b538334c7e1b3 (diff) |
Tue Jan 24 12:34:06 CET 2006 Paolo Molaro <lupus@ximian.com>
* *: update from upstream changes.
svn path=/trunk/mono/; revision=55979
Diffstat (limited to 'libgc/powerpc_darwin_mach_dep.s')
-rw-r--r-- | libgc/powerpc_darwin_mach_dep.s | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/libgc/powerpc_darwin_mach_dep.s b/libgc/powerpc_darwin_mach_dep.s index 92f2c93ca8d..fd23110b80b 100644 --- a/libgc/powerpc_darwin_mach_dep.s +++ b/libgc/powerpc_darwin_mach_dep.s @@ -1,7 +1,7 @@ ; GC_push_regs function. Under some optimization levels GCC will clobber ; some of the non-volatile registers before we get a chance to save them -; therefore, this can't be inline asm. +; therefore, this cannot be inline asm. .text .align 2 @@ -64,7 +64,8 @@ _GC_push_regs: ; PIC stuff, generated by GCC .data -.picsymbol_stub +.section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32 + .align 2 L_GC_push_one$stub: .indirect_symbol _GC_push_one mflr r0 @@ -73,12 +74,12 @@ L0$_GC_push_one: mflr r11 addis r11,r11,ha16(L_GC_push_one$lazy_ptr-L0$_GC_push_one) mtlr r0 - lwz r12,lo16(L_GC_push_one$lazy_ptr-L0$_GC_push_one)(r11) + lwzu r12,lo16(L_GC_push_one$lazy_ptr-L0$_GC_push_one)(r11) mtctr r12 - addi r11,r11,lo16(L_GC_push_one$lazy_ptr-L0$_GC_push_one) bctr .data .lazy_symbol_pointer L_GC_push_one$lazy_ptr: .indirect_symbol _GC_push_one .long dyld_stub_binding_helper + |