15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include "config.h"
.globl _OFForward
.globl _OFForward_stret
.section __TEXT, __objc_methname, cstring_literals
str_forwardingTargetForSelector_:
.asciz "forwardingTargetForSelector:"
.section __DATA, __objc_selrefs, literal_pointers, no_dead_strip
sel_forwardingTargetForSelector_:
.quad str_forwardingTargetForSelector_
.section __DATA, __objc_imageinfo, regular, no_dead_strip
.long 0, 0
.section __TEXT, __text, regular, pure_instructions
.align 2
_OFForward:
|
|
|
|
|
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include "config.h"
.globl _OFForward
.globl _OFForward_stret
.section __TEXT, __objc_methname, cstring_literals
Lstr_forwardingTargetForSelector_:
.asciz "forwardingTargetForSelector:"
.section __DATA, __objc_selrefs, literal_pointers, no_dead_strip
Lsel_forwardingTargetForSelector_:
.quad Lstr_forwardingTargetForSelector_
.section __DATA, __objc_imageinfo, regular, no_dead_strip
.long 0, 0
.section __TEXT, __text, regular, pure_instructions
.align 2
_OFForward:
|
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
stp q0, q1, [sp, #80]
stp q2, q3, [sp, #112]
stp q4, q5, [sp, #144]
stp q6, q7, [sp, #176]
bl _object_getClass
adrp x19, sel_forwardingTargetForSelector_@PAGE
add x19, x19, sel_forwardingTargetForSelector_@PAGEOFF
ldr x19, [x19]
mov x1, x19
bl _class_respondsToSelector
cbz x0, 0f
|
|
|
|
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
stp q0, q1, [sp, #80]
stp q2, q3, [sp, #112]
stp q4, q5, [sp, #144]
stp q6, q7, [sp, #176]
bl _object_getClass
adrp x19, Lsel_forwardingTargetForSelector_@PAGE
add x19, x19, Lsel_forwardingTargetForSelector_@PAGEOFF
ldr x19, [x19]
mov x1, x19
bl _class_respondsToSelector
cbz x0, 0f
|