@@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2022 Jonathan Schleifer + * Copyright (c) 2008-2024 Jonathan Schleifer * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in @@ -46,36 +46,36 @@ std %f26, [%sp + BIAS + 280] std %f28, [%sp + BIAS + 288] std %f30, [%sp + BIAS + 296] sethi %hi(_GLOBAL_OFFSET_TABLE_ - 4), %l7 - call add_pc + call .LaddPC add %l7, %lo(_GLOBAL_OFFSET_TABLE_ + 4), %l7 mov %i0, %o0 call object_getClass nop - sethi %hi(sel_forwardingTargetForSelector_), %o1 - or %o1, %lo(sel_forwardingTargetForSelector_), %o1 + sethi %hi(.Lsel_forwardingTargetForSelector_), %o1 + or %o1, %lo(.Lsel_forwardingTargetForSelector_), %o1 ldx [%l7 + %o1], %o1 call class_respondsToSelector nop brz,pn %o0, 0f mov %i0, %o0 - sethi %hi(sel_forwardingTargetForSelector_), %o1 - or %o1, %lo(sel_forwardingTargetForSelector_), %o1 + sethi %hi(.Lsel_forwardingTargetForSelector_), %o1 + or %o1, %lo(.Lsel_forwardingTargetForSelector_), %o1 ldx [%l7 + %o1], %o1 call objc_msg_lookup nop mov %o0, %l0 mov %i0, %o0 - sethi %hi(sel_forwardingTargetForSelector_), %o1 - or %o1, %lo(sel_forwardingTargetForSelector_), %o1 + sethi %hi(.Lsel_forwardingTargetForSelector_), %o1 + or %o1, %lo(.Lsel_forwardingTargetForSelector_), %o1 ldx [%l7 + %o1], %o1 jmpl %l0, %o7 mov %i1, %o2 brz,pn %o0, 0f @@ -139,36 +139,36 @@ std %f26, [%sp + BIAS + 280] std %f28, [%sp + BIAS + 288] std %f30, [%sp + BIAS + 296] sethi %hi(_GLOBAL_OFFSET_TABLE_ - 4), %l7 - call add_pc + call .LaddPC add %l7, %lo(_GLOBAL_OFFSET_TABLE_ + 4), %l7 mov %i1, %o0 call object_getClass nop - sethi %hi(sel_forwardingTargetForSelector_), %o1 - or %o1, %lo(sel_forwardingTargetForSelector_), %o1 + sethi %hi(.Lsel_forwardingTargetForSelector_), %o1 + or %o1, %lo(.Lsel_forwardingTargetForSelector_), %o1 ldx [%l7 + %o1], %o1 call class_respondsToSelector nop brz,pn %o0, 0f mov %i1, %o0 - sethi %hi(sel_forwardingTargetForSelector_), %o1 - or %o1, %lo(sel_forwardingTargetForSelector_), %o1 + sethi %hi(.Lsel_forwardingTargetForSelector_), %o1 + or %o1, %lo(.Lsel_forwardingTargetForSelector_), %o1 ldx [%l7 + %o1], %o1 call objc_msg_lookup nop mov %o0, %l0 mov %i1, %o0 - sethi %hi(sel_forwardingTargetForSelector_), %o1 - or %o1, %lo(sel_forwardingTargetForSelector_), %o1 + sethi %hi(.Lsel_forwardingTargetForSelector_), %o1 + or %o1, %lo(.Lsel_forwardingTargetForSelector_), %o1 ldx [%l7 + %o1], %o1 jmpl %l0, %o7 mov %i2, %o2 brz,pn %o0, 0f @@ -207,49 +207,49 @@ call OFMethodNotFound_stret restore .type OFForward_stret, %function .size OFForward_stret, .-OFForward_stret -init: +.Linit: save %sp, -176, %sp sethi %hi(_GLOBAL_OFFSET_TABLE_ - 4), %l7 - call add_pc + call .LaddPC add %l7, %lo(_GLOBAL_OFFSET_TABLE_ + 4), %l7 - sethi %hi(module), %i0 - or %i0, %lo(module), %i0 + sethi %hi(.Lmodule), %i0 + or %i0, %lo(.Lmodule), %i0 ldx [%l7 + %i0], %i0 call __objc_exec_class restore -add_pc: +.LaddPC: jmp %o7 + 8 add %l7, %o7, %l7 #ifdef OF_SOLARIS .section .init_array, "aw" #else .section .ctors, "aw", %progbits #endif - .xword init + .xword .Linit .section .rodata -str_forwardingTargetForSelector_: +.Lstr_forwardingTargetForSelector_: .asciz "forwardingTargetForSelector:" .section .data -sel_forwardingTargetForSelector_: - .xword str_forwardingTargetForSelector_, 0 +.Lsel_forwardingTargetForSelector_: + .xword .Lstr_forwardingTargetForSelector_, 0 .xword 0, 0 -symtab: - .xword 0, sel_forwardingTargetForSelector_ +.Lsymtab: + .xword 0, .Lsel_forwardingTargetForSelector_ .half 0, 0 .word 0 .xword 0 -module: - .xword 8, 32, 0, symtab +.Lmodule: + .xword 8, 32, 0, .Lsymtab -#ifdef OF_LINUX +#if defined(OF_LINUX) || defined(OF_HAIKU) || defined(OF_HURD) .section .note.GNU-stack, "", %progbits #endif