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
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
1:
	add	eax, offset _GLOBAL_OFFSET_TABLE_
	mov	eax, [eax+\not_found@GOT]
	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
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
0:
	add	eax, nil_method-0b
	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