diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/passes/translate-to-fuzz_all-features.txt | 1090 |
1 files changed, 505 insertions, 585 deletions
diff --git a/test/passes/translate-to-fuzz_all-features.txt b/test/passes/translate-to-fuzz_all-features.txt index 5a9d9dc7b..6614e2009 100644 --- a/test/passes/translate-to-fuzz_all-features.txt +++ b/test/passes/translate-to-fuzz_all-features.txt @@ -7,10 +7,17 @@ (type $v128_=>_none (func (param v128))) (type $funcref_=>_none (func (param funcref))) (type $exnref_=>_none (func (param exnref))) - (type $eqref_=>_none (func (param eqref))) (type $none_=>_i32 (func (result i32))) (type $anyref_anyref_externref_eqref_v128_=>_i64 (func (param anyref anyref externref eqref v128) (result i64))) + (type $eqref_externref_exnref_v128_exnref_=>_i64 (func (param eqref externref exnref v128 exnref) (result i64))) + (type $exnref_=>_f32 (func (param exnref) (result f32))) + (type $exnref_i64_funcref_f64_f64_=>_f32 (func (param exnref i64 funcref f64 f64) (result f32))) + (type $none_=>_funcref_f32_exnref_exnref (func (result funcref f32 exnref exnref))) + (type $funcref_funcref_=>_funcref_f32_exnref_exnref (func (param funcref funcref) (result funcref f32 exnref exnref))) + (type $none_=>_externref (func (result externref))) (type $i31ref_v128_=>_exnref (func (param i31ref v128) (result exnref))) + (type $funcref_v128_=>_eqref (func (param funcref v128) (result eqref))) + (type $anyref_=>_eqref (func (param anyref) (result eqref))) (type $i31ref_externref_v128_f32_f32_=>_eqref (func (param i31ref externref v128 f32 f32) (result eqref))) (import "fuzzing-support" "log-i32" (func $log-i32 (param i32))) (import "fuzzing-support" "log-i64" (func $log-i64 (param i64))) @@ -20,8 +27,8 @@ (import "fuzzing-support" "log-exnref" (func $log-exnref (param exnref))) (memory $0 (shared 16 17)) (data (i32.const 0) "N\0fN\f5\f9\b1\ff\fa\eb\e5\fe\a7\ec\fb\fc\f4\a6\e4\ea\f0\ae\e3") - (table $0 3 funcref) - (elem (i32.const 0) $func_1 $func_1 $func_1) + (table $0 17 funcref) + (elem (i32.const 0) $func_1 $func_1 $func_1 $func_5 $func_5 $func_6 $func_6 $func_6 $func_6 $func_6 $func_6 $func_6 $func_6 $func_6 $func_6 $func_8 $func_9) (global $global$ (mut eqref) (ref.null eq)) (global $global$_0 (mut i32) (i32.const 470177031)) (global $global$_1 (mut f64) (f64.const 2147483647)) @@ -43,6 +50,14 @@ (export "func_2" (func $func_2)) (export "func_2_invoker" (func $func_2_invoker)) (export "func_3" (func $func_3)) + (export "func_3_invoker" (func $func_3_invoker)) + (export "func_4_invoker" (func $func_4_invoker)) + (export "func_5" (func $func_5)) + (export "func_5_invoker" (func $func_5_invoker)) + (export "func_6" (func $func_6)) + (export "func_6_invoker" (func $func_6_invoker)) + (export "func_7" (func $func_7)) + (export "func_8" (func $func_8)) (export "hangLimitInitializer" (func $hangLimitInitializer)) (func $hashMemory (result i32) (local $0 i32) @@ -469,16 +484,22 @@ (ref.null func) ) ) - (func $func_3 (param $0 eqref) - (local $1 eqref) - (local $2 funcref) - (local $3 funcref) + (func $func_3 (param $0 exnref) (result f32) + (local $1 i31ref) + (local $2 i31ref) + (local $3 (i32 externref f64 i32)) + (local $4 externref) + (local $5 (f32 funcref)) + (local $6 i31ref) + (local $7 i31ref) (block (if (i32.eqz (global.get $hangLimit) ) - (return) + (return + (f32.const -nan:0x7fffa6) + ) ) (global.set $hangLimit (i32.sub @@ -488,630 +509,529 @@ ) ) (block $label$0 - (atomic.fence) - (if - (i64.gt_s - (i64.const 379) - (i64.add - (i32.atomic.load offset=22 + (loop $label$1 + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (f32.const 0.4049999713897705) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (block + (block $label$2 + (i32.store offset=4 align=1 (i32.and - (i32.atomic.load offset=22 - (i32.and - (select - (block $label$1 (result i32) - (block $label$2 - (memory.init 0 - (i32.and - (ref.eq - (ref.null eq) - (local.get $0) - ) - (i32.const 15) - ) - (i32.const 8) - (i32.const 9) - ) - (if - (i32.eqz - (i32.const -75) - ) - (block $label$3 - (nop) - (nop) - ) - (nop) - ) - ) - (i32.const 1903327608) + (block $label$32 (result i32) + (block $label$33 + (nop) + (if + (i32.eqz + (i32.const -1) ) - (select - (loop $label$6 (result i32) - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block $label$7 (result i32) - (loop $label$8 - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block - (nop) - (br_if $label$8 - (i32.eqz - (i32.const -2147483648) - ) - ) - (nop) - ) - ) - (i32.const 76) - ) + (nop) + (nop) + ) + ) + (loop $label$34 (result i32) + (block + (if + (i32.eqz + (global.get $hangLimit) ) - (global.get $global$_0) - (if - (i32.const -96) - (block $label$4 - (f32.store offset=3 - (i32.and - (i32.const 4124) - (i32.const 15) - ) - (f32.const -8192.1474609375) - ) - (return) - ) - (block $label$5 - (memory.copy - (i32.and - (i32.const 32768) - (i32.const 15) - ) - (i32.and - (i32.const 2087520520) - (i32.const 15) - ) - (i32.const -131072) - ) - (return) - ) + (return + (f32.const 1048576) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) ) ) - (i32.const 85) ) - (i32.const 15) + (call $hashMemory) ) ) (i32.const 15) ) + (i32.load8_u offset=22 + (i32.and + (i32.const -14) + (i32.const 15) + ) + ) ) - (i64.const 125) + (nop) + ) + (br_if $label$1 + (i32.const 33554431) + ) + (br_if $label$1 + (i32.const 134217729) ) ) - (block $label$9 - (loop $label$10 - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) + ) + (if + (i32.eqz + (i32.const -65535) + ) + (block $label$4 + (global.set $global$_1 + (block $label$23 + (nop) + (return + (f32.const -4503599627370496) ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) + ) + ) + (call $log-i32 + (call $hashMemory) + ) + ) + (loop $label$6 + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (f32.const 2147483648) ) ) - (block - (local.set $1 - (tuple.extract 2 - (tuple.make - (f32.const 353703200) - (f32.const 31868) - (ref.null eq) - (v128.const i32x4 0x56565656 0xff7fffff 0x41000000 0x41300000) - (i32.const 135290122) - (i31.new - (i32.const 1396855106) - ) - ) - ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) ) - (br_if $label$10 - (i32.eqz - (i32.const -2147483646) - ) + ) + ) + (if + (i32.eqz + (i16x8.extract_lane_s 7 + (v128.const i32x4 0x1c5e4449 0x4644c000 0xcf800000 0x477fd300) ) - (i32.atomic.store offset=22 - (i32.and - (i32.load16_u offset=22 - (i32.and - (i32.const 521404930) - (i32.const 15) - ) - ) - (i32.const 15) - ) - (i32.atomic.load offset=3 + ) + (if + (i32.const -127) + (block $label$7 + (memory.copy + (i32.const 32768) (i32.and - (atomic.notify offset=4 - (i32.and - (if (result i32) - (i32.eqz - (i32.const 1) - ) - (block $label$11 - (br $label$10) - ) - (block $label$12 (result i32) - (i32.store16 offset=2 - (i32.and - (i32.const 65535) - (i32.const 15) - ) - (select - (i32.const -2147483648) - (i32.const 16) - (i32.const 8) - ) - ) - (i64.le_u - (if (result i64) - (i32.const 1464489052) - (i64.atomic.load8_u offset=2 - (i32.and - (global.get $global$_0) - (i32.const 15) - ) - ) - (i64.const 942112219034230640) - ) - (loop $label$13 (result i64) - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block (result i64) - (if - (i32.eqz - (i32.const 134217728) - ) - (block $label$14 - (nop) - (f64.store offset=22 align=4 - (i32.and - (loop $label$15 (result i32) - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block (result i32) - (nop) - (br_if $label$15 - (i32.const 101189382) - ) - (i32.const -127) - ) - ) - (i32.const 15) - ) - (select - (f64.const -nan:0xfffffffffffa1) - (f64.const -0.394) - (i32.const -127) - ) - ) - ) - (block $label$16 - (f32.store offset=4 align=1 - (i32.and - (block $label$17 - (nop) - (br $label$16) - ) - (i32.const 15) - ) - (f32.const -2048) - ) - (loop $label$18 - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block - (block $label$19 - (local.set $2 - (ref.null func) - ) - (nop) - ) - (br_if $label$18 - (i32.eqz - (i32.const 1246300445) - ) - ) - (drop - (tuple.make - (ref.null func) - (ref.null extern) - (ref.null any) - (v128.const i32x4 0x6c15621e 0x74813332 0x00f8da01 0x001644ae) - (ref.null exn) - ) - ) - ) - ) - ) - ) - (br_if $label$13 - (i32.eqz - (global.get $global$_0) - ) - ) - (i64.const -4611686018427387904) - ) - ) - ) - ) - ) - (i32.const 15) - ) - (i32.const 1111245614) - ) + (i32.const 32768) (i32.const 15) ) + (global.get $global$_0) ) + (nop) ) - ) - ) - (return) - ) - (block $label$20 - (nop) - (i64.shr_u - (loop $label$40 - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) + (block $label$8 + (call $log-i32 + (call $hashMemory) ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) + (i32.atomic.store8 offset=4 + (i32.and + (i32.const -70) + (i32.const 15) ) + (i32.const 3342) ) ) - (block - (block $label$41 - (call $log-i32 - (i32.const -66) + ) + (block $label$9 + (global.set $global$_0 + (i32.const 0) + ) + (loop $label$14 + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (f32.const -0) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) ) ) - (br_if $label$40 - (i32.eqz - (loop $label$42 (result i32) - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block (result i32) - (block $label$43 - (nop) - (drop - (if (result f64) - (i32.eqz - (block $label$44 - (call $log-i32 - (call $hashMemory) - ) - (br $label$40) - ) - ) - (tuple.extract 0 - (tuple.make - (f64.const 18446744073709551615) - (i64.const 4294967222) - (i32.const 847216455) - ) - ) - (block $label$45 - (br $label$40) - ) - ) - ) - ) - (br_if $label$42 - (i32.eqz - (if (result i32) - (loop $label$46 - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block $label$47 - (nop) - (br $label$42) - ) - ) - (i32.const 0) - (i32.const 2376257) - ) - ) - ) - (i8x16.all_true - (v128.const i32x4 0xff7fff7f 0x00ffffff 0xfdff0c03 0xffe5fff7) + (block + (block $label$15 + (nop) + (f64.store offset=4 + (i32.and + (i16x8.extract_lane_s 3 + (v128.const i32x4 0x06143637 0x1df25a02 0x00304800 0x713ecf76) ) + (i32.const 15) ) + (global.get $global$_1) ) ) - ) - (block $label$48 - (br_if $label$40 - (i32.const -32768) - ) - (return) - ) - ) - ) - (loop $label$49 - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block - (block $label$50 - (nop) - (block $label$51 - (drop - (ref.func $func_2) - ) - (br_if $label$51 - (f64.eq - (f64.const 4398046511104) - (global.get $global$_1) - ) + (br_if $label$14 + (i31.get_s + (local.get $1) ) ) - ) - (br_if $label$49 - (i32.eqz - (loop $label$52 (result i32) - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) + (call $log-f64 + (f64.div + (f64.load offset=2 align=2 + (i32.and + (i32.const -1) + (i32.const 15) ) ) - (block (result i32) - (block $label$53 - (if - (i32.eqz - (i31.get_s - (i31.new - (i32.const -93) - ) - ) - ) - (br_if $label$49 - (i32.eqz - (i32.const 353711929) - ) - ) - (block $label$54 - (call $log-i32 - (call $hashMemory) - ) - (if - (i32.eqz - (i32.const 511508602) - ) - (block $label$55 - (br_if $label$53 - (i32.eqz - (i31.get_u - (i31.new - (i32.const -512) - ) - ) - ) - ) - (loop $label$56 - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block - (call $log-i32 - (loop $label$57 (result i32) - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block $label$58 (result i32) - (ref.eq - (i31.new - (i32.const -28) - ) - (local.tee $1 - (local.get $1) - ) - ) - ) - ) - ) - (br_if $label$56 - (i32.eqz - (loop $label$59 (result i32) - (block - (if - (i32.eqz - (global.get $hangLimit) - ) - (return) - ) - (global.set $hangLimit - (i32.sub - (global.get $hangLimit) - (i32.const 1) - ) - ) - ) - (block (result i32) - (br_if $label$54 - (i32.eqz - (i32.const 3) - ) - ) - (br_if $label$59 - (i32.const -32769) - ) - (i32.const 337444946) - ) - ) - ) - ) - (nop) - ) - ) - ) - (block $label$60 - (nop) - ) - ) - ) - ) - (nop) + (f64.load offset=2 align=2 + (i32.and + (call $hashMemory) + (i32.const 15) ) - (br_if $label$52 - (i32.eqz - (i32.const 127) - ) - ) - (i32.const 524288) ) ) ) ) - (return) ) ) ) ) ) + (return + (f32.const 4095.84912109375) + ) + ) + ) + (func $func_3_invoker + (drop + (call $func_3 + (ref.null exn) + ) + ) + (drop + (call $func_3 + (ref.null exn) + ) + ) + (drop + (call $func_3 + (ref.null exn) + ) + ) + ) + (func $func_4 (param $0 funcref) (param $1 funcref) (result funcref f32 exnref exnref) + (local $2 f64) + (local $3 externref) + (local $4 f32) + (local $5 (funcref eqref anyref i32 exnref)) + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (tuple.make + (ref.null func) + (f32.const 4294967296) + (ref.null exn) + (ref.null exn) + ) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (tuple.make + (local.get $0) + (f32.const 2147483648) + (ref.null exn) + (ref.null exn) + ) + ) + (func $func_4_invoker + (drop + (call $func_4 + (ref.null func) + (ref.null func) + ) + ) + (drop + (call $func_4 + (ref.null func) + (ref.null func) + ) + ) + (call $log-i32 + (call $hashMemory) + ) + (drop + (call $func_4 + (ref.null func) + (ref.null func) + ) + ) + (drop + (call $func_4 + (ref.null func) + (ref.null func) + ) + ) + (call $log-i32 + (call $hashMemory) + ) + ) + (func $func_5 (param $0 anyref) (result eqref) + (local $1 (anyref anyref i32 f64 exnref f64)) + (local $2 f64) + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (ref.null eq) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (return + (ref.null eq) + ) + ) + (func $func_5_invoker + (drop + (call $func_5 + (ref.null any) + ) + ) + (call $log-i32 + (call $hashMemory) + ) + (drop + (call $func_5 + (ref.null any) + ) + ) + (call $log-i32 + (call $hashMemory) + ) + ) + (func $func_6 (param $0 funcref) (param $1 v128) (result eqref) + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (ref.null eq) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (block $label$0 + (block $label$1 + (if + (i32.const 0) + (block $label$2 + (nop) + (nop) + ) + (block $label$3 + (nop) + (i32.atomic.store8 offset=3 + (i32.const 826952521) + (i31.get_u + (i31.new + (i32.const 2147483647) + ) + ) + ) + ) + ) + (block $label$4 + (call $log-i32 + (call $hashMemory) + ) + (local.set $0 + (local.get $0) + ) + ) + ) + (return + (ref.null eq) + ) + ) + ) + (func $func_6_invoker + (drop + (call $func_6 + (ref.null func) + (v128.const i32x4 0x0e165b0c 0x5b120b08 0x005353f8 0x41d00000) + ) + ) + ) + (func $func_7 (param $0 exnref) (param $1 i64) (param $2 funcref) (param $3 f64) (param $4 f64) (result f32) + (local $5 funcref) + (local $6 (f64 f64 f64)) + (local $7 exnref) + (local $8 f64) + (local $9 eqref) + (local $10 i64) + (local $11 v128) + (local $12 i32) + (local $13 (i31ref v128 f32 i64 exnref)) + (local $14 anyref) + (local $15 (externref eqref externref externref eqref)) + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (f32.const 43) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (select + (loop $label$0 (result f32) + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (f32.const 18446744073709551615) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (f32.const -nan:0x7fffeb) + ) + (f32.const 18526) + (i32.const -50) + ) + ) + (func $func_8 (result externref) + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (ref.null extern) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (block $label$0 (result externref) + (call $log-i32 + (call $hashMemory) + ) + (ref.null extern) + ) + ) + (func $func_9 (param $0 eqref) (param $1 externref) (param $2 exnref) (param $3 v128) (param $4 exnref) (result i64) + (local $5 f32) + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (i64.const -18014398509481983) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (loop $label$0 (result i64) + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (i64.const 7709) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (block $label$1 (result i64) + (br_if $label$0 + (i32.const 707800420) + ) + (loop $label$2 (result i64) + (block + (if + (i32.eqz + (global.get $hangLimit) + ) + (return + (i64.const 2305843009213693952) + ) + ) + (global.set $hangLimit + (i32.sub + (global.get $hangLimit) + (i32.const 1) + ) + ) + ) + (block $label$3 (result i64) + (data.drop 0) + (i64.const -116) + ) + ) + ) ) ) (func $hangLimitInitializer |