File tree Expand file tree Collapse file tree 3 files changed +42
-0
lines changed Expand file tree Collapse file tree 3 files changed +42
-0
lines changed Original file line number Diff line number Diff line change 109
109
'O3_stack-switching.wast' ,
110
110
'coalesce-locals-stack-switching.wast' ,
111
111
'dce-stack-switching.wast' ,
112
+ 'local-cse-cont.wast' ,
112
113
'precompute-stack-switching.wast' ,
113
114
'unsubtyping-stack-switching.wast' ,
114
115
'vacuum-stack-switching.wast' ,
Original file line number Diff line number Diff line change @@ -38,6 +38,7 @@ struct GenerativityScanner : public PostWalker<GenerativityScanner> {
38
38
void visitArrayNewData (ArrayNewData* curr) { generative = true ; }
39
39
void visitArrayNewElem (ArrayNewElem* curr) { generative = true ; }
40
40
void visitArrayNewFixed (ArrayNewFixed* curr) { generative = true ; }
41
+ void visitContNew (ContNew* curr) { generative = true ; }
41
42
};
42
43
43
44
} // anonymous namespace
Original file line number Diff line number Diff line change
1
+ ;; NOTE: Assertions have been generated by update_lit_checks.py --all-items and should not be edited.
2
+ ;; NOTE: This test was ported using port_passes_tests_to_lit.py and could be cleaned up.
3
+
4
+ ;; RUN: foreach %s %t wasm-opt --local-cse -all -S -o - | filecheck %s
5
+
6
+ (module
7
+ ;; CHECK: (type $func (func))
8
+ (type $func (func ))
9
+ ;; CHECK: (type $cont (cont $func))
10
+ (type $cont (cont $func ))
11
+
12
+ ;; CHECK: (elem declare func $cont.new)
13
+
14
+ ;; CHECK: (func $cont.new (type $func)
15
+ ;; CHECK-NEXT: (drop
16
+ ;; CHECK-NEXT: (cont.new $cont
17
+ ;; CHECK-NEXT: (ref.func $cont.new)
18
+ ;; CHECK-NEXT: )
19
+ ;; CHECK-NEXT: )
20
+ ;; CHECK-NEXT: (drop
21
+ ;; CHECK-NEXT: (cont.new $cont
22
+ ;; CHECK-NEXT: (ref.func $cont.new)
23
+ ;; CHECK-NEXT: )
24
+ ;; CHECK-NEXT: )
25
+ ;; CHECK-NEXT: )
26
+ (func $cont.new (type $func )
27
+ ;; We cannot CSE here, as each of these emits a unique continuation.
28
+ (drop
29
+ (cont.new $cont
30
+ (ref.func $cont.new )
31
+ )
32
+ )
33
+ (drop
34
+ (cont.new $cont
35
+ (ref.func $cont.new )
36
+ )
37
+ )
38
+ )
39
+ )
40
+
You can’t perform that action at this time.
0 commit comments