ObjFW  Diff

Differences From Artifact [65ed1dc5ee]:

To Artifact [1aba078652]:


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
51
52
53
54
55
56
57

58
59
60
61
62
63
64







-







	test	eax, eax
	jz	short 0f

	ret

0:
	call	get_eip
1:
	add	eax, offset _GLOBAL_OFFSET_TABLE_
	mov	eax, [eax+\not_found@GOT]
	jmp	eax
.type \name, %function
.size \name, .-\name
.endm

81
82
83
84
85
86
87
88
89


90
91
92
93
94
95
96
97
98
99
100
101
102
80
81
82
83
84
85
86


87
88
89
90
91
92
93
94
95
96
97
98
99
100
101







-
-
+
+













generate_lookup objc_msg_lookup objc_method_not_found
generate_lookup objc_msg_lookup_stret objc_method_not_found_stret
generate_lookup_super objc_msg_lookup_super objc_msg_lookup
generate_lookup_super objc_msg_lookup_super_stret objc_msg_lookup_stret

ret_nil:
	call	get_eip
0:
	add	eax, nil_method-0b
	add	eax, offset _GLOBAL_OFFSET_TABLE_
	mov	eax, [eax+nil_method@GOT]
	ret

nil_method:
	xor	eax, eax
	ret

get_eip:
	mov	eax, [esp]
	ret

#ifdef OF_LINUX
.section .note.GNU-stack, "", %progbits
#endif