File tree 2 files changed +3
-15
lines changed 2 files changed +3
-15
lines changed Original file line number Diff line number Diff line change 15
15
(tag $javascript_exception (param externref )))
16
16
(import " jslib" " caml_wrap_exception"
17
17
(func $caml_wrap_exception (param externref ) (result (ref eq))))
18
- (import " bindings" " start_fiber" (func $start_fiber (param (ref eq))))
19
- (import " bindings" " suspend_fiber"
20
- (func $suspend_fiber
21
- (param externref ) (param $f funcref ) (param $env eqref )
22
- (result eqref )))
23
- (import " bindings" " resume_fiber"
24
- (func $resume_fiber (param externref ) (param (ref eq))))
25
18
(import " stdlib" " caml_main_wrapper"
26
19
(global $caml_main_wrapper (mut (ref null $wrapper_func ))))
27
20
54
47
(field $handlers (mut (ref $handlers )))
55
48
(field $cont (ref $cont ))))
56
49
50
+ ;; Unhandled effects
51
+
57
52
(@string $effect_unhandled " Effect.Unhandled" )
58
53
59
54
(func $raise_unhandled
154
149
(struct.get $fiber $handlers (local.get $fiber ))
155
150
(tuple.extract 2 1 (local.get $resume_res )))
156
151
(ref.i31 (i32.const 0 )))
157
- (ref.i31 ( i32.const 0 )) ;; unused
152
+ (local.get $tail )
158
153
(local.tee $f
159
154
(struct.get $handlers $effect
160
155
(struct.get $fiber $handlers (local.get $fiber ))))
Original file line number Diff line number Diff line change 211
211
(br $loop )))
212
212
(local.get $k ))
213
213
214
- (@string $already_resumed " Effect.Continuation_already_resumed" )
215
-
216
- (global $effect_allowed (mut i32 ) (i32.const 1 ))
217
-
218
- (@if (not wasi)
219
- (@then
220
214
;; Resume
221
215
222
216
(func $do_resume (param $k (ref $cont )) (param $vp (ref eq))
368
362
(struct.new $handlers (local.get $hv ) (local.get $hx ) (local.get $hf ))
369
363
(struct.new $cont (ref.func $initial_cont ))
370
364
(ref.null $fiber )))
371
- ))
372
365
373
366
;; Other functions
374
367
You can’t perform that action at this time.
0 commit comments