Skip to content

Commit 3914edf

Browse files
committed
fix a failing test
1 parent abca23e commit 3914edf

File tree

3 files changed

+739
-733
lines changed

3 files changed

+739
-733
lines changed

Test/Expect/stest247.pasm

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -174,23 +174,25 @@ LR__0020
174174
LR__0021
175175
sub _var02, #127
176176
mov result3, arg01
177-
mov result1, _var01
178177
mov result2, _var02
179-
cmps result2, imm_4294967295_ wc
180-
if_b jmp #LR__0022
181178
cmps result2, #31 wc
182-
if_b shl result3, #2
183-
if_b mov _var05, #30
184-
if_b sub _var05, result2
185-
if_b shr result3, _var05
186-
if_b add result3, arg02
187-
if_b shr result3, #1
188-
if_b cmp result1, #0 wz
189-
if_c_and_nz neg result3, result3
190-
if_b mov result1, result3
191-
if_b jmp #__system___float_tointeger_ret
179+
if_ae cmp _var01, #0 wz
180+
if_a mov _var05, imm_2147483648_
181+
if_nc_and_z mov _var05, imm_2147483647_
182+
if_ae mov result3, _var05
183+
if_ae jmp #LR__0022
184+
cmps result2, imm_4294967295_ wc
185+
if_b mov result3, #0
186+
if_ae shl result3, #2
187+
if_ae mov _var06, #30
188+
if_ae sub _var06, result2
189+
if_ae shr result3, _var06
190+
if_ae add result3, arg02
191+
if_ae shr result3, #1
192+
if_ae cmp _var01, #0 wz
193+
if_a neg result3, result3
192194
LR__0022
193-
mov result1, #0
195+
mov result1, result3
194196
__system___float_tointeger_ret
195197
ret
196198

@@ -380,6 +382,8 @@ _var04
380382
res 1
381383
_var05
382384
res 1
385+
_var06
386+
res 1
383387
arg01
384388
res 1
385389
arg02

sys/float.spin

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ pri _float_cmp(a=float, b=float, u=1) : r=long
143143
return 1
144144
return a - b
145145

146-
pri _float_tointeger(a=float, r) : integer=long | s, x, m
146+
pri {++noinline} _float_tointeger(a=float, r) : integer=long | s, x, m
147147

148148
'Convert float to rounded/truncated integer
149149

0 commit comments

Comments
 (0)