ObjFW  Diff

Differences From Artifact [65ed1dc5ee]:

To Artifact [1aba078652]:


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
	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








<







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

	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
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
	ret

nil_method:
	xor	eax, eax
	ret

get_eip:
	mov	eax, [esp]
	ret

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







<
>
|













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

	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