Skip to content

Commit bf9a07b

Browse files
.
1 parent 09013bc commit bf9a07b

File tree

8 files changed

+212
-180
lines changed

8 files changed

+212
-180
lines changed

tests/compiler/issues/2873.debug.wat

Lines changed: 37 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1112,12 +1112,12 @@
11121112
end
11131113
unreachable
11141114
)
1115-
(func $~lib/util/number/dtoa_core (param $buffer i32) (param $value f64) (param $isSinglePrecision i32) (result i32)
1115+
(func $~lib/util/number/dtoa_core (param $buffer i32) (param $value f64) (param $isSingle i32) (result i32)
11161116
(local $sign i32)
11171117
(local $value|4 f64)
11181118
(local $buffer|5 i32)
11191119
(local $sign|6 i32)
1120-
(local $isSinglePrecision|7 i32)
1120+
(local $isSingle|7 i32)
11211121
(local $frc i64)
11221122
(local $exp i32)
11231123
(local $uv i32)
@@ -1126,7 +1126,7 @@
11261126
(local $sid|13 i64)
11271127
(local $f i64)
11281128
(local $e i32)
1129-
(local $isSinglePrecision|16 i32)
1129+
(local $isSingle|16 i32)
11301130
(local $frc|17 i64)
11311131
(local $exp|18 i32)
11321132
(local $off i32)
@@ -1196,9 +1196,9 @@
11961196
local.set $buffer|5
11971197
local.get $sign
11981198
local.set $sign|6
1199-
local.get $isSinglePrecision
1200-
local.set $isSinglePrecision|7
1201-
local.get $isSinglePrecision|7
1199+
local.get $isSingle
1200+
local.set $isSingle|7
1201+
local.get $isSingle|7
12021202
if
12031203
local.get $value|4
12041204
f32.demote_f64
@@ -1225,9 +1225,11 @@
12251225
i64.add
12261226
local.set $frc
12271227
local.get $exp
1228-
i32.const 1
1229-
local.get $exp
1230-
select
1228+
if (result i32)
1229+
local.get $exp
1230+
else
1231+
i32.const 1
1232+
end
12311233
i32.const 127
12321234
i32.const 23
12331235
i32.add
@@ -1258,9 +1260,11 @@
12581260
i64.add
12591261
local.set $frc
12601262
local.get $exp
1261-
i32.const 1
1262-
local.get $exp
1263-
select
1263+
if (result i32)
1264+
local.get $exp
1265+
else
1266+
i32.const 1
1267+
end
12641268
i32.const 1023
12651269
i32.const 52
12661270
i32.add
@@ -1271,8 +1275,8 @@
12711275
local.set $f
12721276
local.get $exp
12731277
local.set $e
1274-
local.get $isSinglePrecision|7
1275-
local.set $isSinglePrecision|16
1278+
local.get $isSingle|7
1279+
local.set $isSingle|16
12761280
local.get $f
12771281
i64.const 1
12781282
i64.shl
@@ -1298,7 +1302,7 @@
12981302
local.set $exp|18
12991303
i32.const 1
13001304
local.get $f
1301-
local.get $isSinglePrecision|16
1305+
local.get $isSingle|16
13021306
if (result i64)
13031307
i64.const 8388608
13041308
else
@@ -3977,7 +3981,7 @@
39773981
(func $~lib/util/number/dtoa_buffered<f32> (param $buffer i32) (param $value f32) (result i32)
39783982
(local $buffer|2 i32)
39793983
(local $value|3 f64)
3980-
(local $isSinglePrecision i32)
3984+
(local $isSingle i32)
39813985
(local $sign i32)
39823986
i32.const 4
39833987
i32.const 4
@@ -3990,7 +3994,7 @@
39903994
f64.promote_f32
39913995
local.set $value|3
39923996
i32.const 1
3993-
local.set $isSinglePrecision
3997+
local.set $isSingle
39943998
local.get $value|3
39953999
f64.const 0
39964000
f64.eq
@@ -4059,7 +4063,7 @@
40594063
end
40604064
local.get $buffer|2
40614065
local.get $value|3
4062-
local.get $isSinglePrecision
4066+
local.get $isSingle
40634067
call $~lib/util/number/dtoa_core
40644068
br $~lib/util/number/dtoa_buffered_impl|inlined.0
40654069
end
@@ -4076,7 +4080,7 @@
40764080
(func $~lib/util/number/dtoa_buffered<f64> (param $buffer i32) (param $value f64) (result i32)
40774081
(local $buffer|2 i32)
40784082
(local $value|3 f64)
4079-
(local $isSinglePrecision i32)
4083+
(local $isSingle i32)
40804084
(local $sign i32)
40814085
i32.const 8
40824086
i32.const 4
@@ -4088,7 +4092,7 @@
40884092
local.get $value
40894093
local.set $value|3
40904094
i32.const 0
4091-
local.set $isSinglePrecision
4095+
local.set $isSingle
40924096
local.get $value|3
40934097
f64.const 0
40944098
f64.eq
@@ -4157,7 +4161,7 @@
41574161
end
41584162
local.get $buffer|2
41594163
local.get $value|3
4160-
local.get $isSinglePrecision
4164+
local.get $isSingle
41614165
call $~lib/util/number/dtoa_core
41624166
br $~lib/util/number/dtoa_buffered_impl|inlined.1
41634167
end
@@ -5173,7 +5177,7 @@
51735177
)
51745178
(func $~lib/util/number/dtoa32 (param $value f32) (result i32)
51755179
(local $value|1 f64)
5176-
(local $isSinglePrecision i32)
5180+
(local $isSingle i32)
51775181
(local $size i32)
51785182
(local $result i32)
51795183
(local $5 i32)
@@ -5190,7 +5194,7 @@
51905194
f64.promote_f32
51915195
local.set $value|1
51925196
i32.const 1
5193-
local.set $isSinglePrecision
5197+
local.set $isSingle
51945198
local.get $value|1
51955199
f64.const 0
51965200
f64.eq
@@ -5222,7 +5226,7 @@
52225226
end
52235227
i32.const 176
52245228
local.get $value|1
5225-
local.get $isSinglePrecision
5229+
local.get $isSingle
52265230
call $~lib/util/number/dtoa_core
52275231
i32.const 1
52285232
i32.shl
@@ -5250,7 +5254,7 @@
52505254
)
52515255
(func $~lib/util/number/dtoa64 (param $value f64) (result i32)
52525256
(local $value|1 f64)
5253-
(local $isSinglePrecision i32)
5257+
(local $isSingle i32)
52545258
(local $size i32)
52555259
(local $result i32)
52565260
(local $5 i32)
@@ -5266,7 +5270,7 @@
52665270
local.get $value
52675271
local.set $value|1
52685272
i32.const 0
5269-
local.set $isSinglePrecision
5273+
local.set $isSingle
52705274
local.get $value|1
52715275
f64.const 0
52725276
f64.eq
@@ -5298,7 +5302,7 @@
52985302
end
52995303
i32.const 176
53005304
local.get $value|1
5301-
local.get $isSinglePrecision
5305+
local.get $isSingle
53025306
call $~lib/util/number/dtoa_core
53035307
i32.const 1
53045308
i32.shl
@@ -5326,7 +5330,7 @@
53265330
)
53275331
(func $~lib/util/number/dtoa<f32> (param $value f32) (result i32)
53285332
(local $value|1 f64)
5329-
(local $isSinglePrecision i32)
5333+
(local $isSingle i32)
53305334
(local $size i32)
53315335
(local $result i32)
53325336
(local $5 i32)
@@ -5347,7 +5351,7 @@
53475351
f64.promote_f32
53485352
local.set $value|1
53495353
i32.const 1
5350-
local.set $isSinglePrecision
5354+
local.set $isSingle
53515355
local.get $value|1
53525356
f64.const 0
53535357
f64.eq
@@ -5379,7 +5383,7 @@
53795383
end
53805384
i32.const 176
53815385
local.get $value|1
5382-
local.get $isSinglePrecision
5386+
local.get $isSingle
53835387
call $~lib/util/number/dtoa_core
53845388
i32.const 1
53855389
i32.shl
@@ -5407,7 +5411,7 @@
54075411
)
54085412
(func $~lib/util/number/dtoa<f64> (param $value f64) (result i32)
54095413
(local $value|1 f64)
5410-
(local $isSinglePrecision i32)
5414+
(local $isSingle i32)
54115415
(local $size i32)
54125416
(local $result i32)
54135417
(local $5 i32)
@@ -5427,7 +5431,7 @@
54275431
local.get $value
54285432
local.set $value|1
54295433
i32.const 0
5430-
local.set $isSinglePrecision
5434+
local.set $isSingle
54315435
local.get $value|1
54325436
f64.const 0
54335437
f64.eq
@@ -5459,7 +5463,7 @@
54595463
end
54605464
i32.const 176
54615465
local.get $value|1
5462-
local.get $isSinglePrecision
5466+
local.get $isSingle
54635467
call $~lib/util/number/dtoa_core
54645468
i32.const 1
54655469
i32.shl

tests/compiler/resolve-binary.debug.wat

Lines changed: 22 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4727,12 +4727,12 @@
47274727
end
47284728
unreachable
47294729
)
4730-
(func $~lib/util/number/dtoa_core (param $buffer i32) (param $value f64) (param $isSinglePrecision i32) (result i32)
4730+
(func $~lib/util/number/dtoa_core (param $buffer i32) (param $value f64) (param $isSingle i32) (result i32)
47314731
(local $sign i32)
47324732
(local $value|4 f64)
47334733
(local $buffer|5 i32)
47344734
(local $sign|6 i32)
4735-
(local $isSinglePrecision|7 i32)
4735+
(local $isSingle|7 i32)
47364736
(local $frc i64)
47374737
(local $exp i32)
47384738
(local $uv i32)
@@ -4741,7 +4741,7 @@
47414741
(local $sid|13 i64)
47424742
(local $f i64)
47434743
(local $e i32)
4744-
(local $isSinglePrecision|16 i32)
4744+
(local $isSingle|16 i32)
47454745
(local $frc|17 i64)
47464746
(local $exp|18 i32)
47474747
(local $off i32)
@@ -4811,9 +4811,9 @@
48114811
local.set $buffer|5
48124812
local.get $sign
48134813
local.set $sign|6
4814-
local.get $isSinglePrecision
4815-
local.set $isSinglePrecision|7
4816-
local.get $isSinglePrecision|7
4814+
local.get $isSingle
4815+
local.set $isSingle|7
4816+
local.get $isSingle|7
48174817
if
48184818
local.get $value|4
48194819
f32.demote_f64
@@ -4840,9 +4840,11 @@
48404840
i64.add
48414841
local.set $frc
48424842
local.get $exp
4843-
i32.const 1
4844-
local.get $exp
4845-
select
4843+
if (result i32)
4844+
local.get $exp
4845+
else
4846+
i32.const 1
4847+
end
48464848
i32.const 127
48474849
i32.const 23
48484850
i32.add
@@ -4873,9 +4875,11 @@
48734875
i64.add
48744876
local.set $frc
48754877
local.get $exp
4876-
i32.const 1
4877-
local.get $exp
4878-
select
4878+
if (result i32)
4879+
local.get $exp
4880+
else
4881+
i32.const 1
4882+
end
48794883
i32.const 1023
48804884
i32.const 52
48814885
i32.add
@@ -4886,8 +4890,8 @@
48864890
local.set $f
48874891
local.get $exp
48884892
local.set $e
4889-
local.get $isSinglePrecision|7
4890-
local.set $isSinglePrecision|16
4893+
local.get $isSingle|7
4894+
local.set $isSingle|16
48914895
local.get $f
48924896
i64.const 1
48934897
i64.shl
@@ -4913,7 +4917,7 @@
49134917
local.set $exp|18
49144918
i32.const 1
49154919
local.get $f
4916-
local.get $isSinglePrecision|16
4920+
local.get $isSingle|16
49174921
if (result i64)
49184922
i64.const 8388608
49194923
else
@@ -7703,7 +7707,7 @@
77037707
)
77047708
(func $~lib/util/number/dtoa64 (param $value f64) (result i32)
77057709
(local $value|1 f64)
7706-
(local $isSinglePrecision i32)
7710+
(local $isSingle i32)
77077711
(local $size i32)
77087712
(local $result i32)
77097713
(local $5 i32)
@@ -7719,7 +7723,7 @@
77197723
local.get $value
77207724
local.set $value|1
77217725
i32.const 0
7722-
local.set $isSinglePrecision
7726+
local.set $isSingle
77237727
local.get $value|1
77247728
f64.const 0
77257729
f64.eq
@@ -7751,7 +7755,7 @@
77517755
end
77527756
i32.const 8704
77537757
local.get $value|1
7754-
local.get $isSinglePrecision
7758+
local.get $isSingle
77557759
call $~lib/util/number/dtoa_core
77567760
i32.const 1
77577761
i32.shl

0 commit comments

Comments
 (0)