@@ -35,7 +35,7 @@ EM_JS(CountArgsFunc, _PyEM_GetCountArgsPtr, (), {
3535// (type $type1 (func (param i32) (result i32)))
3636// (type $type2 (func (param i32 i32) (result i32)))
3737// (type $type3 (func (param i32 i32 i32) (result i32)))
38- // (type $blocktype (func (param i32 ) (result)))
38+ // (type $blocktype (func (param) (result)))
3939// (table $funcs (import "e" "t") 0 funcref)
4040// (export "f" (func $f))
4141// (func $f (param $fptr i32) (result i32)
@@ -44,36 +44,28 @@ EM_JS(CountArgsFunc, _PyEM_GetCountArgsPtr, (), {
4444// table.get $funcs
4545// local.tee $fref
4646// ref.test $type3
47- // (block $b (type $blocktype)
48- // i32.eqz
49- // br_if $b
47+ // if $blocktype
5048// i32.const 3
5149// return
52- // )
50+ // end
5351// local.get $fref
5452// ref.test $type2
55- // (block $b (type $blocktype)
56- // i32.eqz
57- // br_if $b
53+ // if $blocktype
5854// i32.const 2
5955// return
60- // )
56+ // end
6157// local.get $fref
6258// ref.test $type1
63- // (block $b (type $blocktype)
64- // i32.eqz
65- // br_if $b
59+ // if $blocktype
6660// i32.const 1
6761// return
68- // )
62+ // end
6963// local.get $fref
7064// ref.test $type0
71- // (block $b (type $blocktype)
72- // i32.eqz
73- // br_if $b
65+ // if $blocktype
7466// i32.const 0
7567// return
76- // )
68+ // end
7769// i32.const -1
7870// )
7971// )
@@ -88,13 +80,13 @@ function getPyEMCountArgsPtr() {
8880 const code = new Uint8Array ([
8981 0x00 , 0x61 , 0x73 , 0x6d , // \0asm magic number
9082 0x01 , 0x00 , 0x00 , 0x00 , // version 1
91- 0x01 , 0x1b , // Type section, body is 0x1b bytes
83+ 0x01 , 0x1a , // Type section, body is 0x1a bytes
9284 0x05 , // 6 entries
93- 0x60 , 0x00 , 0x01 , 0x7f , // (type $type0 (func (param) (result i32)))
94- 0x60 , 0x01 , 0x7f , 0x01 , 0x7f , // (type $type1 (func (param i32) (result i32)))
95- 0x60 , 0x02 , 0x7f , 0x7f , 0x01 , 0x7f , // (type $type2 (func (param i32 i32) (result i32)))
96- 0x60 , 0x03 , 0x7f , 0x7f , 0x7f , 0x01 , 0x7f , // (type $type3 (func (param i32 i32 i32) (result i32)))
97- 0x60 , 0x01 , 0x7f , 0x00 , // (type $blocktype (func (param i32 ) (result)))
85+ 0x60 , 0x00 , 0x01 , 0x7f , // (type $type0 (func (param) (result i32)))
86+ 0x60 , 0x01 , 0x7f , 0x01 , 0x7f , // (type $type1 (func (param i32) (result i32)))
87+ 0x60 , 0x02 , 0x7f , 0x7f , 0x01 , 0x7f , // (type $type2 (func (param i32 i32) (result i32)))
88+ 0x60 , 0x03 , 0x7f , 0x7f , 0x7f , 0x01 , 0x7f , // (type $type3 (func (param i32 i32 i32) (result i32)))
89+ 0x60 , 0x00 , 0x00 , // (type $blocktype (func (param) (result)))
9890 0x02 , 0x09 , // Import section, 0x9 byte body
9991 0x01 , // 1 import (table $funcs (import "e" "t") 0 funcref)
10092 0x01 , 0x65 , // "e"
@@ -110,44 +102,36 @@ function getPyEMCountArgsPtr() {
110102 0x00 , // a function
111103 0x00 , // at index 0
112104
113- 0x0a , 0x44 , // Code section,
114- 0x01 , 0x42 , // one entry of length 50
105+ 0x0a , 56 , // Code section,
106+ 0x01 , 54 , // one entry of length 54
115107 0x01 , 0x01 , 0x70 , // one local of type funcref
116108 // Body of the function
117109 0x20 , 0x00 , // local.get $fptr
118110 0x25 , 0x00 , // table.get $funcs
119111 0x22 , 0x01 , // local.tee $fref
120112 0xfb , 0x14 , 0x03 , // ref.test $type3
121- 0x02 , 0x04 , // block $b (type $blocktype)
122- 0x45 , // i32.eqz
123- 0x0d , 0x00 , // br_if $b
113+ 0x04 , 0x04 , // if (type $blocktype)
124114 0x41 , 0x03 , // i32.const 3
125115 0x0f , // return
126116 0x0b , // end block
127117
128118 0x20 , 0x01 , // local.get $fref
129119 0xfb , 0x14 , 0x02 , // ref.test $type2
130- 0x02 , 0x04 , // block $b (type $blocktype)
131- 0x45 , // i32.eqz
132- 0x0d , 0x00 , // br_if $b
120+ 0x04 , 0x04 , // if (type $blocktype)
133121 0x41 , 0x02 , // i32.const 2
134122 0x0f , // return
135123 0x0b , // end block
136124
137125 0x20 , 0x01 , // local.get $fref
138126 0xfb , 0x14 , 0x01 , // ref.test $type1
139- 0x02 , 0x04 , // block $b (type $blocktype)
140- 0x45 , // i32.eqz
141- 0x0d , 0x00 , // br_if $b
127+ 0x04 , 0x04 , // if (type $blocktype)
142128 0x41 , 0x01 , // i32.const 1
143129 0x0f , // return
144130 0x0b , // end block
145131
146132 0x20 , 0x01 , // local.get $fref
147133 0xfb , 0x14 , 0x00 , // ref.test $type0
148- 0x02 , 0x04 , // block $b (type $blocktype)
149- 0x45 , // i32.eqz
150- 0x0d , 0x00 , // br_if $b
134+ 0x04 , 0x04 , // if (type $blocktype)
151135 0x41 , 0x00 , // i32.const 0
152136 0x0f , // return
153137 0x0b , // end block
0 commit comments