[StackSwitching] Prune continuations in LegalizeAndPruneJSInterface (#8523)

JS traps on these types.
diff --git a/src/passes/LegalizeJSInterface.cpp b/src/passes/LegalizeJSInterface.cpp
index 5a3d884..7621b7e 100644
--- a/src/passes/LegalizeJSInterface.cpp
+++ b/src/passes/LegalizeJSInterface.cpp
@@ -432,7 +432,7 @@
   bool isIllegal(Type type) {
     auto features = type.getFeatures();
     return features.hasSIMD() || features.hasMultivalue() ||
-           features.hasExceptionHandling();
+           features.hasExceptionHandling() || features.hasStackSwitching();
   }
 };
 
diff --git a/test/lit/passes/legalize-and-prune-js-interface.wast b/test/lit/passes/legalize-and-prune-js-interface.wast
index dbd168e..3ab3873 100644
--- a/test/lit/passes/legalize-and-prune-js-interface.wast
+++ b/test/lit/passes/legalize-and-prune-js-interface.wast
@@ -150,25 +150,32 @@
 ;; CHECK-NEXT:  )
 ;; CHECK-NEXT: )
 (module
-  ;; CHECK:      (type $0 (func (param i64) (result i64)))
+  ;; CHECK:      (type $func (func))
+  (type $func (func))
+  ;; CHECK:      (type $cont (cont $func))
+  (type $cont (cont $func))
 
-  ;; CHECK:      (type $1 (func (param v128)))
+  ;; CHECK:      (type $2 (func (param i64) (result i64)))
 
-  ;; CHECK:      (type $2 (func (result v128)))
+  ;; CHECK:      (type $3 (func (param v128)))
 
-  ;; CHECK:      (type $3 (func (result i32 i32)))
+  ;; CHECK:      (type $4 (func (result v128)))
 
-  ;; CHECK:      (type $4 (func (result exnref)))
+  ;; CHECK:      (type $5 (func (result i32 i32)))
 
-  ;; CHECK:      (type $5 (func (param i32)))
+  ;; CHECK:      (type $6 (func (result exnref)))
 
-  ;; CHECK:      (type $6 (func (param i32 i32) (result i32)))
+  ;; CHECK:      (type $7 (func (param (ref null $cont))))
 
-  ;; CHECK:      (import "env" "setTempRet0" (func $setTempRet0 (type $5) (param i32)))
+  ;; CHECK:      (type $8 (func (param i32)))
+
+  ;; CHECK:      (type $9 (func (param i32 i32) (result i32)))
+
+  ;; CHECK:      (import "env" "setTempRet0" (func $setTempRet0 (type $8) (param i32)))
 
   ;; CHECK:      (export "export-64" (func $legalstub$export-64))
 
-  ;; CHECK:      (func $export-64 (type $0) (param $x i64) (result i64)
+  ;; CHECK:      (func $export-64 (type $2) (param $x i64) (result i64)
   ;; CHECK-NEXT:  (unreachable)
   ;; CHECK-NEXT: )
   (func $export-64 (export "export-64") (param $x i64) (result i64)
@@ -176,7 +183,7 @@
     (unreachable)
   )
 
-  ;; CHECK:      (func $export-v128 (type $1) (param $x v128)
+  ;; CHECK:      (func $export-v128 (type $3) (param $x v128)
   ;; CHECK-NEXT:  (unreachable)
   ;; CHECK-NEXT: )
   (func $export-v128 (export "export-v128") (param $x v128)
@@ -184,7 +191,7 @@
     (unreachable)
   )
 
-  ;; CHECK:      (func $export-v128-result (type $2) (result v128)
+  ;; CHECK:      (func $export-v128-result (type $4) (result v128)
   ;; CHECK-NEXT:  (unreachable)
   ;; CHECK-NEXT: )
   (func $export-v128-result (export "export-v128-result") (result v128)
@@ -192,7 +199,7 @@
     (unreachable)
   )
 
-  ;; CHECK:      (func $export-mv (type $3) (result i32 i32)
+  ;; CHECK:      (func $export-mv (type $5) (result i32 i32)
   ;; CHECK-NEXT:  (unreachable)
   ;; CHECK-NEXT: )
   (func $export-mv (export "export-mv") (result i32 i32)
@@ -200,16 +207,22 @@
     (unreachable)
   )
 
-  ;; CHECK:      (func $export-exn (type $4) (result exnref)
+  ;; CHECK:      (func $export-exn (type $6) (result exnref)
   ;; CHECK-NEXT:  (ref.null noexn)
   ;; CHECK-NEXT: )
   (func $export-exn (export "export-exn") (result exnref)
     ;; This will be pruned.
     (ref.null noexn)
   )
+
+  ;; CHECK:      (func $export-cont (type $7) (param $cont (ref null $cont))
+  ;; CHECK-NEXT: )
+  (func $export-cont (export "export-cont") (param $cont (ref null $cont))
+    ;; This will be pruned.
+  )
 )
 
-;; CHECK:      (func $legalstub$export-64 (type $6) (param $0 i32) (param $1 i32) (result i32)
+;; CHECK:      (func $legalstub$export-64 (type $9) (param $0 i32) (param $1 i32) (result i32)
 ;; CHECK-NEXT:  (local $2 i64)
 ;; CHECK-NEXT:  (local.set $2
 ;; CHECK-NEXT:   (call $export-64