diff options
Diffstat (limited to 'test/lit/basic')
-rw-r--r-- | test/lit/basic/subtypes.wast | 58 | ||||
-rw-r--r-- | test/lit/basic/types-function-references.wast | 96 |
2 files changed, 77 insertions, 77 deletions
diff --git a/test/lit/basic/subtypes.wast b/test/lit/basic/subtypes.wast index d283ebefa..24ab1b193 100644 --- a/test/lit/basic/subtypes.wast +++ b/test/lit/basic/subtypes.wast @@ -28,15 +28,11 @@ ;; CHECK-TEXT: (type $struct-i31 (sub $struct-any (struct (field (ref i31))))) - ;; CHECK-TEXT: (type $5 (func (param (ref $vector-i32) (ref null $vector-i32)))) - ;; CHECK-TEXT: (type $vector-any (sub (array (ref any)))) ;; CHECK-BIN: (type $struct-any (sub (struct (field (ref any))))) ;; CHECK-BIN: (type $struct-i31 (sub $struct-any (struct (field (ref i31))))) - ;; CHECK-BIN: (type $5 (func (param (ref $vector-i32) (ref null $vector-i32)))) - ;; CHECK-BIN: (type $vector-any (sub (array (ref any)))) (type $vector-any (sub (array (ref any)))) ;; CHECK-TEXT: (type $vector-i31 (sub $vector-any (array (ref i31)))) @@ -50,15 +46,7 @@ (type $struct-i31 (sub $struct-any (struct (field (ref i31)) ))) - ;; CHECK-TEXT: (type $8 (func (param (ref $vector-i31) (ref $vector-any)))) - - ;; CHECK-TEXT: (type $9 (func (param (ref $struct-i31) (ref $struct-any)))) - ;; CHECK-TEXT: (type $struct-i31_any (sub $struct-i31 (struct (field (ref i31)) (field (ref any))))) - ;; CHECK-BIN: (type $8 (func (param (ref $vector-i31) (ref $vector-any)))) - - ;; CHECK-BIN: (type $9 (func (param (ref $struct-i31) (ref $struct-any)))) - ;; CHECK-BIN: (type $struct-i31_any (sub $struct-i31 (struct (field (ref i31)) (field (ref any))))) (type $struct-i31_any (sub $struct-i31(struct (field (ref i31)) @@ -74,20 +62,32 @@ (field (ref $struct-rec-two)) ))) + ;; CHECK-TEXT: (type $8 (func (param (ref $vector-i32) (ref null $vector-i32)))) + + ;; CHECK-TEXT: (type $9 (func (param (ref $vector-i31) (ref $vector-any)))) + + ;; CHECK-TEXT: (type $10 (func (param (ref $struct-i31) (ref $struct-any)))) + ;; CHECK-TEXT: (type $11 (func (param (ref $struct-i31) (ref $struct-i31_any)))) ;; CHECK-TEXT: (type $12 (func (param (ref $struct-rec-one) (ref $struct-rec-two)))) - ;; CHECK-TEXT: (func $foo (type $5) (param $no-null (ref $vector-i32)) (param $yes-null (ref null $vector-i32)) + ;; CHECK-TEXT: (func $foo (type $8) (param $no-null (ref $vector-i32)) (param $yes-null (ref null $vector-i32)) ;; CHECK-TEXT-NEXT: (local.set $yes-null ;; CHECK-TEXT-NEXT: (local.get $no-null) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) + ;; CHECK-BIN: (type $8 (func (param (ref $vector-i32) (ref null $vector-i32)))) + + ;; CHECK-BIN: (type $9 (func (param (ref $vector-i31) (ref $vector-any)))) + + ;; CHECK-BIN: (type $10 (func (param (ref $struct-i31) (ref $struct-any)))) + ;; CHECK-BIN: (type $11 (func (param (ref $struct-i31) (ref $struct-i31_any)))) ;; CHECK-BIN: (type $12 (func (param (ref $struct-rec-one) (ref $struct-rec-two)))) - ;; CHECK-BIN: (func $foo (type $5) (param $no-null (ref $vector-i32)) (param $yes-null (ref null $vector-i32)) + ;; CHECK-BIN: (func $foo (type $8) (param $no-null (ref $vector-i32)) (param $yes-null (ref null $vector-i32)) ;; CHECK-BIN-NEXT: (local.set $yes-null ;; CHECK-BIN-NEXT: (local.get $no-null) ;; CHECK-BIN-NEXT: ) @@ -98,12 +98,12 @@ (local.set $yes-null (local.get $no-null)) ) - ;; CHECK-TEXT: (func $bar (type $8) (param $v-i31 (ref $vector-i31)) (param $v-any (ref $vector-any)) + ;; CHECK-TEXT: (func $bar (type $9) (param $v-i31 (ref $vector-i31)) (param $v-any (ref $vector-any)) ;; CHECK-TEXT-NEXT: (local.set $v-any ;; CHECK-TEXT-NEXT: (local.get $v-i31) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) - ;; CHECK-BIN: (func $bar (type $8) (param $v-i31 (ref $vector-i31)) (param $v-any (ref $vector-any)) + ;; CHECK-BIN: (func $bar (type $9) (param $v-i31 (ref $vector-i31)) (param $v-any (ref $vector-any)) ;; CHECK-BIN-NEXT: (local.set $v-any ;; CHECK-BIN-NEXT: (local.get $v-i31) ;; CHECK-BIN-NEXT: ) @@ -114,12 +114,12 @@ (local.set $v-any (local.get $v-i31)) ) - ;; CHECK-TEXT: (func $baz (type $9) (param $s-i31 (ref $struct-i31)) (param $s-any (ref $struct-any)) + ;; CHECK-TEXT: (func $baz (type $10) (param $s-i31 (ref $struct-i31)) (param $s-any (ref $struct-any)) ;; CHECK-TEXT-NEXT: (local.set $s-any ;; CHECK-TEXT-NEXT: (local.get $s-i31) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) - ;; CHECK-BIN: (func $baz (type $9) (param $s-i31 (ref $struct-i31)) (param $s-any (ref $struct-any)) + ;; CHECK-BIN: (func $baz (type $10) (param $s-i31 (ref $struct-i31)) (param $s-any (ref $struct-any)) ;; CHECK-BIN-NEXT: (local.set $s-any ;; CHECK-BIN-NEXT: (local.get $s-i31) ;; CHECK-BIN-NEXT: ) @@ -172,41 +172,41 @@ ;; CHECK-BIN-NODEBUG: (type $4 (sub $3 (struct (field (ref i31))))) -;; CHECK-BIN-NODEBUG: (type $5 (func (param (ref $2) (ref null $2)))) +;; CHECK-BIN-NODEBUG: (type $5 (sub (array (ref any)))) -;; CHECK-BIN-NODEBUG: (type $6 (sub (array (ref any)))) +;; CHECK-BIN-NODEBUG: (type $6 (sub $5 (array (ref i31)))) -;; CHECK-BIN-NODEBUG: (type $7 (sub $6 (array (ref i31)))) +;; CHECK-BIN-NODEBUG: (type $7 (sub $4 (struct (field (ref i31)) (field (ref any))))) -;; CHECK-BIN-NODEBUG: (type $8 (func (param (ref $7) (ref $6)))) +;; CHECK-BIN-NODEBUG: (type $8 (func (param (ref $2) (ref null $2)))) -;; CHECK-BIN-NODEBUG: (type $9 (func (param (ref $4) (ref $3)))) +;; CHECK-BIN-NODEBUG: (type $9 (func (param (ref $6) (ref $5)))) -;; CHECK-BIN-NODEBUG: (type $10 (sub $4 (struct (field (ref i31)) (field (ref any))))) +;; CHECK-BIN-NODEBUG: (type $10 (func (param (ref $4) (ref $3)))) -;; CHECK-BIN-NODEBUG: (type $11 (func (param (ref $4) (ref $10)))) +;; CHECK-BIN-NODEBUG: (type $11 (func (param (ref $4) (ref $7)))) ;; CHECK-BIN-NODEBUG: (type $12 (func (param (ref $0) (ref $1)))) -;; CHECK-BIN-NODEBUG: (func $0 (type $5) (param $0 (ref $2)) (param $1 (ref null $2)) +;; CHECK-BIN-NODEBUG: (func $0 (type $8) (param $0 (ref $2)) (param $1 (ref null $2)) ;; CHECK-BIN-NODEBUG-NEXT: (local.set $1 ;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $1 (type $8) (param $0 (ref $7)) (param $1 (ref $6)) +;; CHECK-BIN-NODEBUG: (func $1 (type $9) (param $0 (ref $6)) (param $1 (ref $5)) ;; CHECK-BIN-NODEBUG-NEXT: (local.set $1 ;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $2 (type $9) (param $0 (ref $4)) (param $1 (ref $3)) +;; CHECK-BIN-NODEBUG: (func $2 (type $10) (param $0 (ref $4)) (param $1 (ref $3)) ;; CHECK-BIN-NODEBUG-NEXT: (local.set $1 ;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $3 (type $11) (param $0 (ref $4)) (param $1 (ref $10)) +;; CHECK-BIN-NODEBUG: (func $3 (type $11) (param $0 (ref $4)) (param $1 (ref $7)) ;; CHECK-BIN-NODEBUG-NEXT: (local.set $0 ;; CHECK-BIN-NODEBUG-NEXT: (local.get $1) ;; CHECK-BIN-NODEBUG-NEXT: ) diff --git a/test/lit/basic/types-function-references.wast b/test/lit/basic/types-function-references.wast index b85e1f422..792536cfe 100644 --- a/test/lit/basic/types-function-references.wast +++ b/test/lit/basic/types-function-references.wast @@ -10,39 +10,39 @@ ;; RUN: cat %t.bin.nodebug.wast | filecheck %s --check-prefix=CHECK-BIN-NODEBUG (module + ;; CHECK-TEXT: (type $mixed_results (func (result anyref f32 anyref f32))) + + ;; CHECK-TEXT: (type $i32-i32 (func (param i32) (result i32))) + ;; CHECK-TEXT: (type $void (func)) ;; CHECK-BIN: (type $mixed_results (func (result anyref f32 anyref f32))) + ;; CHECK-BIN: (type $i32-i32 (func (param i32) (result i32))) + ;; CHECK-BIN: (type $void (func)) (type $void (func)) ;; inline ref type in result - ;; CHECK-TEXT: (type $i32-i32 (func (param i32) (result i32))) - - ;; CHECK-TEXT: (type $mixed_results (func (result anyref f32 anyref f32))) - ;; CHECK-TEXT: (type $3 (func (result i32 (ref null $mixed_results) f64))) - ;; CHECK-TEXT: (type $4 (func (param (ref $i32-i32)) (result i32))) - - ;; CHECK-TEXT: (type $5 (func (param (ref null $i32-i32)) (result i32))) - - ;; CHECK-TEXT: (type $6 (func (result i32))) - ;; CHECK-TEXT: (type $_=>_eqref (func (result eqref))) - ;; CHECK-BIN: (type $i32-i32 (func (param i32) (result i32))) - ;; CHECK-BIN: (type $3 (func (result i32 (ref null $mixed_results) f64))) - ;; CHECK-BIN: (type $4 (func (param (ref $i32-i32)) (result i32))) + ;; CHECK-BIN: (type $_=>_eqref (func (result eqref))) + (type $_=>_eqref (func (result eqref))) - ;; CHECK-BIN: (type $5 (func (param (ref null $i32-i32)) (result i32))) + ;; CHECK-TEXT: (type $5 (func (param (ref $i32-i32)) (result i32))) - ;; CHECK-BIN: (type $6 (func (result i32))) + ;; CHECK-TEXT: (type $6 (func (param (ref null $i32-i32)) (result i32))) - ;; CHECK-BIN: (type $_=>_eqref (func (result eqref))) - (type $_=>_eqref (func (result eqref))) + ;; CHECK-TEXT: (type $7 (func (result i32))) ;; CHECK-TEXT: (type $f64_=>_ref_null<_->_eqref> (func (param f64) (result (ref null $_=>_eqref)))) + ;; CHECK-BIN: (type $5 (func (param (ref $i32-i32)) (result i32))) + + ;; CHECK-BIN: (type $6 (func (param (ref null $i32-i32)) (result i32))) + + ;; CHECK-BIN: (type $7 (func (result i32))) + ;; CHECK-BIN: (type $f64_=>_ref_null<_->_eqref> (func (param f64) (result (ref null $_=>_eqref)))) (type $f64_=>_ref_null<_->_eqref> (func (param f64) (result (ref null $_=>_eqref)))) (type $=>eqref (func (result eqref))) @@ -104,13 +104,13 @@ (call_ref $i32-i32 (i32.const 42) (ref.func $call-ref-more)) ) - ;; CHECK-TEXT: (func $call_from-param (type $4) (param $f (ref $i32-i32)) (result i32) + ;; CHECK-TEXT: (func $call_from-param (type $5) (param $f (ref $i32-i32)) (result i32) ;; CHECK-TEXT-NEXT: (call_ref $i32-i32 ;; CHECK-TEXT-NEXT: (i32.const 42) ;; CHECK-TEXT-NEXT: (local.get $f) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) - ;; CHECK-BIN: (func $call_from-param (type $4) (param $f (ref $i32-i32)) (result i32) + ;; CHECK-BIN: (func $call_from-param (type $5) (param $f (ref $i32-i32)) (result i32) ;; CHECK-BIN-NEXT: (call_ref $i32-i32 ;; CHECK-BIN-NEXT: (i32.const 42) ;; CHECK-BIN-NEXT: (local.get $f) @@ -120,13 +120,13 @@ (call_ref $i32-i32 (i32.const 42) (local.get $f)) ) - ;; CHECK-TEXT: (func $call_from-param-null (type $5) (param $f (ref null $i32-i32)) (result i32) + ;; CHECK-TEXT: (func $call_from-param-null (type $6) (param $f (ref null $i32-i32)) (result i32) ;; CHECK-TEXT-NEXT: (call_ref $i32-i32 ;; CHECK-TEXT-NEXT: (i32.const 42) ;; CHECK-TEXT-NEXT: (local.get $f) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) - ;; CHECK-BIN: (func $call_from-param-null (type $5) (param $f (ref null $i32-i32)) (result i32) + ;; CHECK-BIN: (func $call_from-param-null (type $6) (param $f (ref null $i32-i32)) (result i32) ;; CHECK-BIN-NEXT: (call_ref $i32-i32 ;; CHECK-BIN-NEXT: (i32.const 42) ;; CHECK-BIN-NEXT: (local.get $f) @@ -136,7 +136,7 @@ (call_ref $i32-i32 (i32.const 42) (local.get $f)) ) - ;; CHECK-TEXT: (func $call_from-local-null (type $6) (result i32) + ;; CHECK-TEXT: (func $call_from-local-null (type $7) (result i32) ;; CHECK-TEXT-NEXT: (local $f (ref null $i32-i32)) ;; CHECK-TEXT-NEXT: (local.set $f ;; CHECK-TEXT-NEXT: (ref.func $call-ref-more) @@ -146,7 +146,7 @@ ;; CHECK-TEXT-NEXT: (local.get $f) ;; CHECK-TEXT-NEXT: ) ;; CHECK-TEXT-NEXT: ) - ;; CHECK-BIN: (func $call_from-local-null (type $6) (result i32) + ;; CHECK-BIN: (func $call_from-local-null (type $7) (result i32) ;; CHECK-BIN-NEXT: (local $f (ref null $i32-i32)) ;; CHECK-BIN-NEXT: (local.set $f ;; CHECK-BIN-NEXT: (ref.func $call-ref-more) @@ -354,21 +354,21 @@ ) ;; CHECK-BIN-NODEBUG: (type $0 (func (result anyref f32 anyref f32))) -;; CHECK-BIN-NODEBUG: (type $1 (func)) +;; CHECK-BIN-NODEBUG: (type $1 (func (param i32) (result i32))) -;; CHECK-BIN-NODEBUG: (type $2 (func (param i32) (result i32))) +;; CHECK-BIN-NODEBUG: (type $2 (func)) ;; CHECK-BIN-NODEBUG: (type $3 (func (result i32 (ref null $0) f64))) -;; CHECK-BIN-NODEBUG: (type $4 (func (param (ref $2)) (result i32))) +;; CHECK-BIN-NODEBUG: (type $4 (func (result eqref))) -;; CHECK-BIN-NODEBUG: (type $5 (func (param (ref null $2)) (result i32))) +;; CHECK-BIN-NODEBUG: (type $5 (func (param (ref $1)) (result i32))) -;; CHECK-BIN-NODEBUG: (type $6 (func (result i32))) +;; CHECK-BIN-NODEBUG: (type $6 (func (param (ref null $1)) (result i32))) -;; CHECK-BIN-NODEBUG: (type $7 (func (result eqref))) +;; CHECK-BIN-NODEBUG: (type $7 (func (result i32))) -;; CHECK-BIN-NODEBUG: (type $8 (func (param f64) (result (ref null $7)))) +;; CHECK-BIN-NODEBUG: (type $8 (func (param f64) (result (ref null $4)))) ;; CHECK-BIN-NODEBUG: (type $9 (func (result anyref))) @@ -376,62 +376,62 @@ ;; CHECK-BIN-NODEBUG: (elem declare func $0 $2) -;; CHECK-BIN-NODEBUG: (func $0 (type $1) -;; CHECK-BIN-NODEBUG-NEXT: (call_ref $1 +;; CHECK-BIN-NODEBUG: (func $0 (type $2) +;; CHECK-BIN-NODEBUG-NEXT: (call_ref $2 ;; CHECK-BIN-NODEBUG-NEXT: (ref.func $0) ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $1 (type $1) -;; CHECK-BIN-NODEBUG-NEXT: (return_call_ref $1 +;; CHECK-BIN-NODEBUG: (func $1 (type $2) +;; CHECK-BIN-NODEBUG-NEXT: (return_call_ref $2 ;; CHECK-BIN-NODEBUG-NEXT: (ref.func $0) ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $2 (type $2) (param $0 i32) (result i32) -;; CHECK-BIN-NODEBUG-NEXT: (call_ref $2 +;; CHECK-BIN-NODEBUG: (func $2 (type $1) (param $0 i32) (result i32) +;; CHECK-BIN-NODEBUG-NEXT: (call_ref $1 ;; CHECK-BIN-NODEBUG-NEXT: (i32.const 42) ;; CHECK-BIN-NODEBUG-NEXT: (ref.func $2) ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $3 (type $4) (param $0 (ref $2)) (result i32) -;; CHECK-BIN-NODEBUG-NEXT: (call_ref $2 +;; CHECK-BIN-NODEBUG: (func $3 (type $5) (param $0 (ref $1)) (result i32) +;; CHECK-BIN-NODEBUG-NEXT: (call_ref $1 ;; CHECK-BIN-NODEBUG-NEXT: (i32.const 42) ;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $4 (type $5) (param $0 (ref null $2)) (result i32) -;; CHECK-BIN-NODEBUG-NEXT: (call_ref $2 +;; CHECK-BIN-NODEBUG: (func $4 (type $6) (param $0 (ref null $1)) (result i32) +;; CHECK-BIN-NODEBUG-NEXT: (call_ref $1 ;; CHECK-BIN-NODEBUG-NEXT: (i32.const 42) ;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $5 (type $6) (result i32) -;; CHECK-BIN-NODEBUG-NEXT: (local $0 (ref null $2)) +;; CHECK-BIN-NODEBUG: (func $5 (type $7) (result i32) +;; CHECK-BIN-NODEBUG-NEXT: (local $0 (ref null $1)) ;; CHECK-BIN-NODEBUG-NEXT: (local.set $0 ;; CHECK-BIN-NODEBUG-NEXT: (ref.func $2) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG-NEXT: (call_ref $2 +;; CHECK-BIN-NODEBUG-NEXT: (call_ref $1 ;; CHECK-BIN-NODEBUG-NEXT: (i32.const 42) ;; CHECK-BIN-NODEBUG-NEXT: (local.get $0) ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $6 (type $8) (param $0 f64) (result (ref null $7)) +;; CHECK-BIN-NODEBUG: (func $6 (type $8) (param $0 f64) (result (ref null $4)) ;; CHECK-BIN-NODEBUG-NEXT: (ref.null nofunc) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $7 (type $1) +;; CHECK-BIN-NODEBUG: (func $7 (type $2) ;; CHECK-BIN-NODEBUG-NEXT: (local $0 i32) ;; CHECK-BIN-NODEBUG-NEXT: (local $1 f64) ;; CHECK-BIN-NODEBUG-NEXT: (local $2 (ref null $9)) ;; CHECK-BIN-NODEBUG-NEXT: (nop) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $8 (type $1) +;; CHECK-BIN-NODEBUG: (func $8 (type $2) ;; CHECK-BIN-NODEBUG-NEXT: (local $0 (tuple i32 (ref null $0) f64)) ;; CHECK-BIN-NODEBUG-NEXT: (local $1 (ref null $0)) ;; CHECK-BIN-NODEBUG-NEXT: (local $2 i32) @@ -467,7 +467,7 @@ ;; CHECK-BIN-NODEBUG-NEXT: ) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $9 (type $1) +;; CHECK-BIN-NODEBUG: (func $9 (type $2) ;; CHECK-BIN-NODEBUG-NEXT: (local $0 (ref null $0)) ;; CHECK-BIN-NODEBUG-NEXT: (local $1 (ref null $0)) ;; CHECK-BIN-NODEBUG-NEXT: (local $2 anyref) @@ -480,7 +480,7 @@ ;; CHECK-BIN-NODEBUG-NEXT: (nop) ;; CHECK-BIN-NODEBUG-NEXT: ) -;; CHECK-BIN-NODEBUG: (func $10 (type $1) +;; CHECK-BIN-NODEBUG: (func $10 (type $2) ;; CHECK-BIN-NODEBUG-NEXT: (local $0 i32) ;; CHECK-BIN-NODEBUG-NEXT: (local $1 i64) ;; CHECK-BIN-NODEBUG-NEXT: (local $2 i64) |