diff options
author | Thomas Lively <7121787+tlively@users.noreply.github.com> | 2021-05-18 15:58:31 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-18 15:58:31 -0700 |
commit | 92b0cbdd9e2747c5cf6ecc546718d0ec0b1bc64b (patch) | |
tree | 988bdc1753ba73f41b7c2c5613170fa638a1e5f9 /test/passes/remove-non-js-ops.txt | |
parent | f8bb9c228446998882edea012bf9fa3004262504 (diff) | |
download | binaryen-92b0cbdd9e2747c5cf6ecc546718d0ec0b1bc64b.tar.gz binaryen-92b0cbdd9e2747c5cf6ecc546718d0ec0b1bc64b.tar.bz2 binaryen-92b0cbdd9e2747c5cf6ecc546718d0ec0b1bc64b.zip |
Remove Type ordering (#3793)
As found in #3682, the current implementation of type ordering is not correct,
and although the immediate issue would be easy to fix, I don't think the current
intended comparison algorithm is correct in the first place. Rather than try to
switch to using a correct algorithm (which I am not sure I know how to
implement, although I have an idea) this PR removes Type ordering entirely. In
places that used Type ordering with std::set or std::map because they require
deterministic iteration order, this PR uses InsertOrdered{Set,Map} instead.
Diffstat (limited to 'test/passes/remove-non-js-ops.txt')
-rw-r--r-- | test/passes/remove-non-js-ops.txt | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/test/passes/remove-non-js-ops.txt b/test/passes/remove-non-js-ops.txt index e4c3cdfa1..00575cacb 100644 --- a/test/passes/remove-non-js-ops.txt +++ b/test/passes/remove-non-js-ops.txt @@ -2,21 +2,21 @@ (type $i64_i64_=>_i64 (func (param i64 i64) (result i64))) (type $i32_=>_i32 (func (param i32) (result i32))) (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $f32_=>_f32 (func (param f32) (result f32))) (type $f64_=>_f64 (func (param f64) (result f64))) + (type $f32_=>_f32 (func (param f32) (result f32))) (type $i32_i32_i32_=>_none (func (param i32 i32 i32))) - (type $i32_=>_none (func (param i32))) + (type $f64_f64_=>_f64 (func (param f64 f64) (result f64))) + (type $f32_f32_=>_f32 (func (param f32 f32) (result f32))) + (type $i32_i32_=>_none (func (param i32 i32))) + (type $none_=>_f32 (func (result f32))) (type $f32_=>_none (func (param f32))) + (type $none_=>_f64 (func (result f64))) (type $f64_=>_none (func (param f64))) - (type $i32_i32_=>_none (func (param i32 i32))) (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) - (type $none_=>_i32 (func (result i32))) + (type $i32_=>_none (func (param i32))) (type $i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32) (result i32))) (type $i32_i32_i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32 i32 i32) (result i32))) - (type $none_=>_f32 (func (result f32))) - (type $f32_f32_=>_f32 (func (param f32 f32) (result f32))) - (type $none_=>_f64 (func (result f64))) - (type $f64_f64_=>_f64 (func (param f64 f64) (result f64))) + (type $none_=>_i32 (func (result i32))) (import "env" "wasm2js_scratch_load_i32" (func $wasm2js_scratch_load_i32 (param i32) (result i32))) (import "env" "wasm2js_scratch_store_i32" (func $wasm2js_scratch_store_i32 (param i32 i32))) (import "env" "wasm2js_scratch_load_f32" (func $wasm2js_scratch_load_f32 (result f32))) |