summaryrefslogtreecommitdiff
path: root/test/lit/passes/monomorphize.wast
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2023-04-11 10:47:30 -0700
committerGitHub <noreply@github.com>2023-04-11 17:47:30 +0000
commit18898347e7c4ceb86988bdb8594160883f7886f0 (patch)
treead934605a71cc8a3638b5388ae72c57cce08165f /test/lit/passes/monomorphize.wast
parent160dda0aa5ecc8252c5862cd937157296d9015cb (diff)
downloadbinaryen-18898347e7c4ceb86988bdb8594160883f7886f0.tar.gz
binaryen-18898347e7c4ceb86988bdb8594160883f7886f0.tar.bz2
binaryen-18898347e7c4ceb86988bdb8594160883f7886f0.zip
Add a name hint to getValidName() (#5653)
Without the hint, we always look for a valid name using name$0, $1, $2, etc., starting from 0, and in some cases that can lead to quadratic behavior. Noticed on a testcase in the fuzzer that runs for over 24 seconds (I gave up at that point) but takes only 2 seconds with this.
Diffstat (limited to 'test/lit/passes/monomorphize.wast')
-rw-r--r--test/lit/passes/monomorphize.wast34
1 files changed, 17 insertions, 17 deletions
diff --git a/test/lit/passes/monomorphize.wast b/test/lit/passes/monomorphize.wast
index 43c647a0a..d171291e2 100644
--- a/test/lit/passes/monomorphize.wast
+++ b/test/lit/passes/monomorphize.wast
@@ -35,10 +35,10 @@
;; ALWAYS-NEXT: (call $refinable
;; ALWAYS-NEXT: (struct.new_default $A)
;; ALWAYS-NEXT: )
- ;; ALWAYS-NEXT: (call $refinable_0
+ ;; ALWAYS-NEXT: (call $refinable_4
;; ALWAYS-NEXT: (struct.new_default $B)
;; ALWAYS-NEXT: )
- ;; ALWAYS-NEXT: (call $refinable_0
+ ;; ALWAYS-NEXT: (call $refinable_4
;; ALWAYS-NEXT: (struct.new_default $B)
;; ALWAYS-NEXT: )
;; ALWAYS-NEXT: )
@@ -115,7 +115,7 @@
)
-;; ALWAYS: (func $refinable_0 (type $ref|$B|_=>_none) (param $ref (ref $B))
+;; ALWAYS: (func $refinable_4 (type $ref|$B|_=>_none) (param $ref (ref $B))
;; ALWAYS-NEXT: (drop
;; ALWAYS-NEXT: (local.get $ref)
;; ALWAYS-NEXT: )
@@ -142,7 +142,7 @@
;; ALWAYS: (type $ref|$B|_=>_none (func (param (ref $B))))
;; ALWAYS: (func $calls (type $none_=>_none)
- ;; ALWAYS-NEXT: (call $refinable_0
+ ;; ALWAYS-NEXT: (call $refinable_2
;; ALWAYS-NEXT: (struct.new_default $B)
;; ALWAYS-NEXT: )
;; ALWAYS-NEXT: )
@@ -186,7 +186,7 @@
)
-;; ALWAYS: (func $refinable_0 (type $ref|$B|_=>_none) (param $ref (ref $B))
+;; ALWAYS: (func $refinable_2 (type $ref|$B|_=>_none) (param $ref (ref $B))
;; ALWAYS-NEXT: (local $unref (ref $A))
;; ALWAYS-NEXT: (local $2 (ref $A))
;; ALWAYS-NEXT: (local.set $2
@@ -231,7 +231,7 @@
;; ALWAYS-NEXT: (call $refinable1
;; ALWAYS-NEXT: (struct.new_default $A)
;; ALWAYS-NEXT: )
- ;; ALWAYS-NEXT: (call $refinable1_0
+ ;; ALWAYS-NEXT: (call $refinable1_4
;; ALWAYS-NEXT: (struct.new_default $B)
;; ALWAYS-NEXT: )
;; ALWAYS-NEXT: )
@@ -253,10 +253,10 @@
)
;; ALWAYS: (func $calls2 (type $none_=>_none)
- ;; ALWAYS-NEXT: (call $refinable1_1
+ ;; ALWAYS-NEXT: (call $refinable1_5
;; ALWAYS-NEXT: (struct.new_default $C)
;; ALWAYS-NEXT: )
- ;; ALWAYS-NEXT: (call $refinable2_0
+ ;; ALWAYS-NEXT: (call $refinable2_6
;; ALWAYS-NEXT: (struct.new_default $B)
;; ALWAYS-NEXT: )
;; ALWAYS-NEXT: )
@@ -306,19 +306,19 @@
)
)
-;; ALWAYS: (func $refinable1_0 (type $ref|$B|_=>_none) (param $ref (ref $B))
+;; ALWAYS: (func $refinable1_4 (type $ref|$B|_=>_none) (param $ref (ref $B))
;; ALWAYS-NEXT: (drop
;; ALWAYS-NEXT: (local.get $ref)
;; ALWAYS-NEXT: )
;; ALWAYS-NEXT: )
-;; ALWAYS: (func $refinable1_1 (type $ref|$C|_=>_none) (param $ref (ref $C))
+;; ALWAYS: (func $refinable1_5 (type $ref|$C|_=>_none) (param $ref (ref $C))
;; ALWAYS-NEXT: (drop
;; ALWAYS-NEXT: (local.get $ref)
;; ALWAYS-NEXT: )
;; ALWAYS-NEXT: )
-;; ALWAYS: (func $refinable2_0 (type $ref|$B|_=>_none) (param $ref (ref $B))
+;; ALWAYS: (func $refinable2_6 (type $ref|$B|_=>_none) (param $ref (ref $B))
;; ALWAYS-NEXT: (drop
;; ALWAYS-NEXT: (local.get $ref)
;; ALWAYS-NEXT: )
@@ -364,10 +364,10 @@
;; ALWAYS-NEXT: (call $refinable
;; ALWAYS-NEXT: (struct.new_default $A)
;; ALWAYS-NEXT: )
- ;; ALWAYS-NEXT: (call $refinable_0
+ ;; ALWAYS-NEXT: (call $refinable_3
;; ALWAYS-NEXT: (struct.new_default $B)
;; ALWAYS-NEXT: )
- ;; ALWAYS-NEXT: (call $refinable_0
+ ;; ALWAYS-NEXT: (call $refinable_3
;; ALWAYS-NEXT: (struct.new_default $B)
;; ALWAYS-NEXT: )
;; ALWAYS-NEXT: )
@@ -378,10 +378,10 @@
;; CAREFUL-NEXT: (call $refinable
;; CAREFUL-NEXT: (struct.new_default $A)
;; CAREFUL-NEXT: )
- ;; CAREFUL-NEXT: (call $refinable_0
+ ;; CAREFUL-NEXT: (call $refinable_3
;; CAREFUL-NEXT: (struct.new_default $B)
;; CAREFUL-NEXT: )
- ;; CAREFUL-NEXT: (call $refinable_0
+ ;; CAREFUL-NEXT: (call $refinable_3
;; CAREFUL-NEXT: (struct.new_default $B)
;; CAREFUL-NEXT: )
;; CAREFUL-NEXT: )
@@ -503,7 +503,7 @@
)
)
-;; ALWAYS: (func $refinable_0 (type $ref|$B|_=>_none) (param $ref (ref $B))
+;; ALWAYS: (func $refinable_3 (type $ref|$B|_=>_none) (param $ref (ref $B))
;; ALWAYS-NEXT: (local $x (ref $A))
;; ALWAYS-NEXT: (call $import
;; ALWAYS-NEXT: (ref.cast $B
@@ -534,7 +534,7 @@
;; ALWAYS-NEXT: )
;; ALWAYS-NEXT: )
-;; CAREFUL: (func $refinable_0 (type $ref|$B|_=>_none) (param $0 (ref $B))
+;; CAREFUL: (func $refinable_3 (type $ref|$B|_=>_none) (param $0 (ref $B))
;; CAREFUL-NEXT: (local $1 (ref $B))
;; CAREFUL-NEXT: (call $import
;; CAREFUL-NEXT: (local.get $0)