@@ -87,10 +87,8 @@ __system___gc_ptrs
8787 mov _var03, #1
8888 wrword _var03, result1
8989 add _var01, #16
90- abs _var03, result2 wc
91- shr _var03, #4
92- negc _var03, _var03
93- wrword _var03, _var01
90+ shr result2, #4
91+ wrword result2, _var01
9492 mov result2, _var01
9593 add result2, #2
9694 mov _var03, imm_27791_
@@ -267,23 +265,21 @@ LR__0030
267265 call #__system___gc_tryalloc
268266 mov _inline8___system___lockmem_r, result1
269267LR__0031
270- mov arg01, __system___gc_doalloc__cse__0004
271268 mov __system___gc_doalloc_reserveflag, #0
272- wrlong __system___gc_doalloc_reserveflag, arg01
269+ wrlong __system___gc_doalloc_reserveflag, __system___gc_doalloc__cse__0004
273270 cmp _inline8___system___lockmem_r, #0 wz
274271 if_ne shl __system___gc_doalloc_size, #4
275272 if_ne sub __system___gc_doalloc_size, #8
276- if_ne abs __system___gc_doalloc__cse__0004, __system___gc_doalloc_size wc
277- if_ne shr __system___gc_doalloc__cse__0004, #2
278- if_ne negc arg03, __system___gc_doalloc__cse__0004
279- if_ne mov arg01, _inline8___system___lockmem_r
273+ if_ne shr __system___gc_doalloc_size, #2
274+ if_ne mov __system___gc_doalloc__cse__0004, _inline8___system___lockmem_r
280275 if_ne mov arg02, #0
276+ if_ne mov arg03, __system___gc_doalloc_size
281277 if_e jmp #LR__0034
282278 cmp arg03, #0 wz
283279 if_e jmp #LR__0033
284280LR__0032
285- wrlong arg02, arg01
286- add arg01 , #4
281+ wrlong arg02, __system___gc_doalloc__cse__0004
282+ add __system___gc_doalloc__cse__0004 , #4
287283 djnz arg03, #LR__0032
288284LR__0033
289285LR__0034
0 commit comments