diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/lit/passes/name-types.wast | 31 | ||||
-rw-r--r-- | test/lit/passes/type-ssa.wast | 72 | ||||
-rw-r--r-- | test/lit/passes/type-ssa_and_merging.wast | 4 | ||||
-rw-r--r-- | test/lit/recursive-types.wast | 18 |
4 files changed, 75 insertions, 50 deletions
diff --git a/test/lit/passes/name-types.wast b/test/lit/passes/name-types.wast index 61dbb3079..b08d36ca2 100644 --- a/test/lit/passes/name-types.wast +++ b/test/lit/passes/name-types.wast @@ -6,19 +6,44 @@ (type $obnoxious-super-long-type-name_____________________________1 (struct)) ;; A reasonable name that will be kept. - ;; CHECK: (type $type$1 (struct )) + ;; CHECK: (type $type_1 (struct )) ;; CHECK: (type $reasonable-name (struct (field i32))) (type $reasonable-name (struct (field i32))) - ;; CHECK: (type $type$0 (func (param (ref $type$1) (ref $reasonable-name)))) + ;; lintable is a name that can be polished up a bit. We'll remove the _7. But + ;; unlintable cannot be shortened because a conflict would occur. onelintable + ;; allows one of the two longer names to be shortened, but the second would + ;; conflict. + (type $lintable-name_7 (struct (field i64))) - ;; CHECK: (func $foo (type $type$0) (param $x (ref $type$1)) (param $y (ref $reasonable-name)) + ;; CHECK: (type $lintable-name (struct (field i64))) + + ;; CHECK: (type $unlintable-name_7 (struct (field f32))) + (type $unlintable-name_7 (struct (field f32))) + + ;; CHECK: (type $unlintable-name (struct (field f64))) + (type $unlintable-name (struct (field f64))) + + (type $onelintable-name_6 (struct (field i32) (field i32) (field i32))) + ;; CHECK: (type $onelintable-name (struct (field i32) (field i32) (field i32))) + + ;; CHECK: (type $onelintable-name_8 (struct (field i32) (field i32) (field i32) (field i32))) + (type $onelintable-name_8 (struct (field i32) (field i32) (field i32) (field i32))) + + ;; CHECK: (type $type (func (param (ref $type_1) (ref $reasonable-name) (ref $lintable-name) (ref $unlintable-name_7) (ref $unlintable-name) (ref $onelintable-name) (ref $onelintable-name_8)))) + + ;; CHECK: (func $foo (type $type) (param $x (ref $type_1)) (param $y (ref $reasonable-name)) (param $z (ref $lintable-name)) (param $w (ref $unlintable-name_7)) (param $t (ref $unlintable-name)) (param $a (ref $onelintable-name)) (param $b (ref $onelintable-name_8)) ;; CHECK-NEXT: (nop) ;; CHECK-NEXT: ) (func $foo ;; Use the types to keep them alive. (param $x (ref $obnoxious-super-long-type-name_____________________________1)) (param $y (ref $reasonable-name)) + (param $z (ref $lintable-name_7)) + (param $w (ref $unlintable-name_7)) + (param $t (ref $unlintable-name)) + (param $a (ref $onelintable-name_6)) + (param $b (ref $onelintable-name_8)) ) ) diff --git a/test/lit/passes/type-ssa.wast b/test/lit/passes/type-ssa.wast index 1c03ecf76..37bdef17c 100644 --- a/test/lit/passes/type-ssa.wast +++ b/test/lit/passes/type-ssa.wast @@ -10,24 +10,24 @@ ;; CHECK: (type $1 (func)) ;; CHECK: (rec - ;; CHECK-NEXT: (type $struct$1 (sub $struct (struct (field i32)))) + ;; CHECK-NEXT: (type $struct_1 (sub $struct (struct (field i32)))) - ;; CHECK: (type $struct$2 (sub $struct (struct (field i32)))) + ;; CHECK: (type $struct_2 (sub $struct (struct (field i32)))) - ;; CHECK: (type $struct$3 (sub $struct (struct (field i32)))) + ;; CHECK: (type $struct_3 (sub $struct (struct (field i32)))) - ;; CHECK: (type $struct$4 (sub $struct (struct (field i32)))) + ;; CHECK: (type $struct_4 (sub $struct (struct (field i32)))) - ;; CHECK: (type $struct$5 (sub $struct (struct (field i32)))) + ;; CHECK: (type $struct_5 (sub $struct (struct (field i32)))) - ;; CHECK: (global $g (ref $struct) (struct.new $struct$4 + ;; CHECK: (global $g (ref $struct) (struct.new $struct_4 ;; CHECK-NEXT: (i32.const 42) ;; CHECK-NEXT: )) (global $g (ref $struct) (struct.new $struct (i32.const 42) )) - ;; CHECK: (global $h (ref $struct) (struct.new $struct$5 + ;; CHECK: (global $h (ref $struct) (struct.new $struct_5 ;; CHECK-NEXT: (i32.const 42) ;; CHECK-NEXT: )) (global $h (ref $struct) (struct.new $struct @@ -36,10 +36,10 @@ ;; CHECK: (func $foo (type $1) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (struct.new_default $struct$1) + ;; CHECK-NEXT: (struct.new_default $struct_1) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (struct.new $struct$2 + ;; CHECK-NEXT: (struct.new $struct_2 ;; CHECK-NEXT: (i32.const 10) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) @@ -57,7 +57,7 @@ ;; CHECK: (func $another-func (type $1) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (struct.new $struct$3 + ;; CHECK-NEXT: (struct.new $struct_3 ;; CHECK-NEXT: (i32.const 100) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) @@ -139,18 +139,18 @@ (type $struct (sub (struct (field (ref null any))))) ;; CHECK: (rec - ;; CHECK-NEXT: (type $struct$1 (sub $struct (struct (field anyref)))) + ;; CHECK-NEXT: (type $struct_1 (sub $struct (struct (field anyref)))) - ;; CHECK: (type $struct$2 (sub $struct (struct (field anyref)))) + ;; CHECK: (type $struct_2 (sub $struct (struct (field anyref)))) - ;; CHECK: (type $struct$3 (sub $struct (struct (field anyref)))) + ;; CHECK: (type $struct_3 (sub $struct (struct (field anyref)))) ;; CHECK: (func $foo (type $0) (param $any anyref) (param $array arrayref) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (struct.new_default $struct$1) + ;; CHECK-NEXT: (struct.new_default $struct_1) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (struct.new $struct$2 + ;; CHECK-NEXT: (struct.new $struct_2 ;; CHECK-NEXT: (ref.null none) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) @@ -160,7 +160,7 @@ ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (struct.new $struct$3 + ;; CHECK-NEXT: (struct.new $struct_3 ;; CHECK-NEXT: (local.get $array) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) @@ -216,17 +216,17 @@ (elem func $array.new) ;; CHECK: (rec - ;; CHECK-NEXT: (type $array$1 (sub $array (array (mut anyref)))) + ;; CHECK-NEXT: (type $array_1 (sub $array (array (mut anyref)))) - ;; CHECK: (type $array$2 (sub $array (array (mut anyref)))) + ;; CHECK: (type $array_2 (sub $array (array (mut anyref)))) - ;; CHECK: (type $array$3 (sub $array (array (mut anyref)))) + ;; CHECK: (type $array_3 (sub $array (array (mut anyref)))) - ;; CHECK: (type $array-func$4 (sub $array-func (array (mut funcref)))) + ;; CHECK: (type $array-func_4 (sub $array-func (array (mut funcref)))) - ;; CHECK: (type $array$5 (sub $array (array (mut anyref)))) + ;; CHECK: (type $array_5 (sub $array (array (mut anyref)))) - ;; CHECK: (type $array$6 (sub $array (array (mut anyref)))) + ;; CHECK: (type $array_6 (sub $array (array (mut anyref)))) ;; CHECK: (type $9 (func)) @@ -234,18 +234,18 @@ ;; CHECK: (func $array.new (type $1) (param $refined (ref i31)) (param $null-any anyref) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (array.new_default $array$1 + ;; CHECK-NEXT: (array.new_default $array_1 ;; CHECK-NEXT: (i32.const 5) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (array.new $array$2 + ;; CHECK-NEXT: (array.new $array_2 ;; CHECK-NEXT: (ref.null none) ;; CHECK-NEXT: (i32.const 5) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (array.new $array$3 + ;; CHECK-NEXT: (array.new $array_3 ;; CHECK-NEXT: (local.get $refined) ;; CHECK-NEXT: (i32.const 5) ;; CHECK-NEXT: ) @@ -289,7 +289,7 @@ ;; CHECK: (func $array.new_seg (type $9) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (array.new_elem $array-func$4 $0 + ;; CHECK-NEXT: (array.new_elem $array-func_4 $0 ;; CHECK-NEXT: (i32.const 0) ;; CHECK-NEXT: (i32.const 3) ;; CHECK-NEXT: ) @@ -308,12 +308,12 @@ ;; CHECK: (func $array.new_fixed (type $1) (param $refined (ref i31)) (param $null-any anyref) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (array.new_fixed $array$5 1 + ;; CHECK-NEXT: (array.new_fixed $array_5 1 ;; CHECK-NEXT: (ref.null none) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (array.new_fixed $array$6 1 + ;; CHECK-NEXT: (array.new_fixed $array_6 1 ;; CHECK-NEXT: (local.get $refined) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) @@ -369,14 +369,14 @@ ;; CHECK: (type $empty (sub (struct ))) (type $empty (sub (struct))) - ;; CHECK: (type $empty$1 (sub $empty (struct ))) + ;; CHECK: (type $empty_1 (sub $empty (struct ))) ;; CHECK: (type $2 (func (param anyref))) ;; CHECK: (type $struct (sub (struct (field externref) (field anyref) (field externref)))) (type $struct (sub (struct externref anyref externref))) - ;; CHECK: (global $g (mut anyref) (struct.new_default $empty$1)) + ;; CHECK: (global $g (mut anyref) (struct.new_default $empty_1)) (global $g (mut anyref) (struct.new $empty)) ;; CHECK: (func $0 (type $2) (param $param anyref) @@ -428,13 +428,13 @@ ;; CHECK: (type $2 (func (param (ref $subarray)))) ;; CHECK: (rec - ;; CHECK-NEXT: (type $array$1 (sub $array (array (mut f32)))) + ;; CHECK-NEXT: (type $array_1 (sub $array (array (mut f32)))) ;; CHECK: (type $4 (struct (field (mut i32)) (field (mut i32)) (field (mut f64)) (field (mut f64)) (field (mut i32)) (field (mut f64)) (field (mut f64)) (field (mut i32)) (field (mut i32)) (field (mut i32)) (field (mut i32)))) ;; CHECK: (func $1 (type $2) (param $ref (ref $subarray)) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (array.new_default $array$1 + ;; CHECK-NEXT: (array.new_default $array_1 ;; CHECK-NEXT: (i32.const 64) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) @@ -455,15 +455,15 @@ ;; CHECK: (type $A (sub (struct ))) (type $A (sub (struct))) - ;; CHECK: (type $A$1 (sub $A (struct ))) + ;; CHECK: (type $A_1 (sub $A (struct ))) ;; CHECK: (type $2 (func (result (ref $A)))) ;; CHECK: (func $0 (type $2) (result (ref $A)) - ;; CHECK-NEXT: (block $label (result (ref $A$1)) + ;; CHECK-NEXT: (block $label (result (ref $A_1)) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (br_on_cast $label (ref $A$1) (ref $A$1) - ;; CHECK-NEXT: (struct.new_default $A$1) + ;; CHECK-NEXT: (br_on_cast $label (ref $A_1) (ref $A_1) + ;; CHECK-NEXT: (struct.new_default $A_1) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (unreachable) diff --git a/test/lit/passes/type-ssa_and_merging.wast b/test/lit/passes/type-ssa_and_merging.wast index d1e3a53fa..3fbff170d 100644 --- a/test/lit/passes/type-ssa_and_merging.wast +++ b/test/lit/passes/type-ssa_and_merging.wast @@ -22,9 +22,9 @@ ;; NOP: (type $2 (func (result i32))) ;; NOP: (import "a" "b" (func $import (type $2) (result i32))) - ;; YES: (type $A$2 (sub $A (struct ))) + ;; YES: (type $A_2 (sub $A (struct ))) - ;; YES: (type $A$1 (sub $A (struct ))) + ;; YES: (type $A_1 (sub $A (struct ))) ;; YES: (import "a" "b" (func $import (type $0) (result i32))) (import "a" "b" (func $import (result i32))) diff --git a/test/lit/recursive-types.wast b/test/lit/recursive-types.wast index 4e92c8e6f..74d0b1227 100644 --- a/test/lit/recursive-types.wast +++ b/test/lit/recursive-types.wast @@ -8,47 +8,47 @@ (type (func (param (ref null 1)) (result (ref null 1)))) (type (func (param (ref null 0)) (result (ref null 1)))) (rec - ;; CHECK: (type $type$0 (func (param (ref null $type$0)) (result (ref null $type$0)))) + ;; CHECK: (type $type (func (param (ref null $type)) (result (ref null $type)))) ;; CHECK: (rec - ;; CHECK-NEXT: (type $f3 (sub (func (param (ref null $type$2)) (result (ref null $f3))))) + ;; CHECK-NEXT: (type $f3 (sub (func (param (ref null $type_2)) (result (ref null $f3))))) (type $f3 (sub (func (param (ref null 4)) (result (ref null 3))))) (type (sub $f3 (func (param (ref null 3)) (result (ref null 4))))) ) - ;; CHECK: (type $type$2 (sub $f3 (func (param (ref null $f3)) (result (ref null $type$2))))) + ;; CHECK: (type $type_2 (sub $f3 (func (param (ref null $f3)) (result (ref null $type_2))))) - ;; CHECK: (type $type$1 (func (param (ref null $type$0)) (result (ref null $type$0)))) + ;; CHECK: (type $type_1 (func (param (ref null $type)) (result (ref null $type)))) - ;; CHECK: (func $foo (type $type$0) (param $0 (ref null $type$0)) (result (ref null $type$0)) + ;; CHECK: (func $foo (type $type) (param $0 (ref null $type)) (result (ref null $type)) ;; CHECK-NEXT: (unreachable) ;; CHECK-NEXT: ) (func $foo (type 0) (unreachable) ) - ;; CHECK: (func $bar (type $type$0) (param $0 (ref null $type$0)) (result (ref null $type$0)) + ;; CHECK: (func $bar (type $type) (param $0 (ref null $type)) (result (ref null $type)) ;; CHECK-NEXT: (unreachable) ;; CHECK-NEXT: ) (func $bar (type 1) (unreachable) ) - ;; CHECK: (func $baz (type $type$1) (param $0 (ref null $type$0)) (result (ref null $type$0)) + ;; CHECK: (func $baz (type $type_1) (param $0 (ref null $type)) (result (ref null $type)) ;; CHECK-NEXT: (unreachable) ;; CHECK-NEXT: ) (func $baz (type 2) (unreachable) ) - ;; CHECK: (func $qux (type $f3) (param $0 (ref null $type$2)) (result (ref null $f3)) + ;; CHECK: (func $qux (type $f3) (param $0 (ref null $type_2)) (result (ref null $f3)) ;; CHECK-NEXT: (unreachable) ;; CHECK-NEXT: ) (func $qux (type 3) (unreachable) ) - ;; CHECK: (func $quux (type $type$2) (param $0 (ref null $f3)) (result (ref null $type$2)) + ;; CHECK: (func $quux (type $type_2) (param $0 (ref null $f3)) (result (ref null $type_2)) ;; CHECK-NEXT: (unreachable) ;; CHECK-NEXT: ) (func $quux (type 4) |