ObjFW  Diff

Differences From Artifact [9f1f33cd94]:

To Artifact [c25a1420f7]:


54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
	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

.Ltagged_pointer_\name:
	movzx	edx, dl
	shr	edx, 1

	call	get_eip







<

|







54
55
56
57
58
59
60

61
62
63
64
65
66
67
68
69
	test	eax, eax
	jz	short 0f

	ret

0:
	call	get_eip

	add	eax, offset _GLOBAL_OFFSET_TABLE_
	lea	eax, [eax+\not_found@GOTOFF]
	jmp	eax

.Ltagged_pointer_\name:
	movzx	edx, dl
	shr	edx, 1

	call	get_eip
97
98
99
100
101
102
103
104

105
106
107
108
109
110
111
112
113
114
115
116
117
118
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







<
>
|













96
97
98
99
100
101
102

103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
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_
	lea	eax, [eax+nil_method@GOTOFF]
	ret

nil_method:
	xor	eax, eax
	ret

get_eip:
	mov	eax, [esp]
	ret

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