Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
bytecodealliance
GitHub Repository: bytecodealliance/wasmtime
Path: blob/main/tests/disas/epoch-interruption.wat
1690 views
;;! target = "x86_64"
;;! test = "optimize"
;;! flags = ["-Wepoch-interruption=y"]

(module (func (loop (br 0))))

;; function u0:0(i64 vmctx, i64) tail {
;;     gv0 = vmctx
;;     gv1 = load.i64 notrap aligned readonly gv0+8
;;     gv2 = load.i64 notrap aligned gv1+16
;;     gv3 = vmctx
;;     gv4 = load.i64 notrap aligned readonly can_move gv3+8
;;     sig0 = (i64 vmctx) -> i64 tail
;;     fn0 = colocated u1610612736:16 sig0
;;     stack_limit = gv2
;;
;;                                 block0(v0: i64, v1: i64):
;; @0016                               v3 = load.i64 notrap aligned v0+24
;; @0016                               v4 = load.i64 notrap aligned v3
;; @0016                               v5 = load.i64 notrap aligned readonly can_move v0+8
;; @0016                               v6 = load.i64 notrap aligned v5+8
;; @0016                               v7 = icmp uge v4, v6
;; @0016                               brif v7, block3, block2(v6)
;;
;;                                 block3 cold:
;; @0016                               v9 = call fn0(v0)
;; @0016                               jump block2(v9)
;;
;;                                 block2(v21: i64):
;; @0017                               jump block4(v21)
;;
;;                                 block4(v12: i64):
;; @0017                               v11 = load.i64 notrap aligned v3
;; @0017                               v13 = icmp uge v11, v12
;; @0017                               brif v13, block7, block6(v12)
;;
;;                                 block7 cold:
;; @0017                               v15 = load.i64 notrap aligned v5+8
;; @0017                               v16 = icmp.i64 uge v11, v15
;; @0017                               brif v16, block8, block6(v15)
;;
;;                                 block8 cold:
;; @0017                               v18 = call fn0(v0)
;; @0017                               jump block6(v18)
;;
;;                                 block6(v22: i64):
;; @0019                               jump block4(v22)
;; }