ObjFW  Diff

Differences From Artifact [b09be65dbc]:

To Artifact [ef9b28568c]:


77
78
79
80
81
82
83
84

85
86
87
88


89
90
91
92
93
94
95

96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
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:
#ifdef PIC
	save


	sethi	%hi(_GLOBAL_OFFSET_TABLE_ - 4), %l7
	call	get_pc
	 add	%l7, %lo(_GLOBAL_OFFSET_TABLE_ + 4), %l7



	sethi	%hi(nil_method), %i0
	or	%i0, %lo(nil_method), %i0
	ld	[%l7 + %i0], %i0

	ret
	 restore

#else
	sethi	%hi(nil_method), %o0
	retl
	 or	%o0, %lo(nil_method), %o0
#endif

nil_method:
	retl
	 set	0, %o0

#ifdef PIC
get_pc:
	retl
	 add	%o7, %l7, %l7
#endif

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







<
>

|
|
|
>
>

|
|
<

<
|
>








|
<
<
<
<
<
<




77
78
79
80
81
82
83

84
85
86
87
88
89
90
91
92
93

94

95
96
97
98
99
100
101
102
103
104
105






106
107
108
109
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:
#ifdef PIC

	or	%o7, %g0, %o2

	sethi	%hi(_GLOBAL_OFFSET_TABLE_ - 4), %o1
	call	0f
	 add	%o1, %lo(_GLOBAL_OFFSET_TABLE_ + 4), %o1
0:
	add	%o7, %o1, %o1

	sethi	%hi(nil_method), %o0
	or	%o0, %lo(nil_method), %o0



	jmpl	%o2 + 8, %g0
	 ld	[%o1 + %o0], %o0
#else
	sethi	%hi(nil_method), %o0
	retl
	 or	%o0, %lo(nil_method), %o0
#endif

nil_method:
	retl
	 clr	%o0







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