current commit
260319.4 · Trap on atomic.wait on an unshared memory (#8497)
;; NOTE: Assertions have been generated by update_lit_checks.py --output=fuzz-exec and should not be edited.

;; RUN: wasm-opt %s -all --fuzz-exec-before -q -o /dev/null 2>&1 | filecheck %s

(module
 (import "fuzzing-support" "log-i32" (func $log (param i32)))

 (memory $shared 23 256 shared)
 (memory $unshared 10 20)

 ;; CHECK:      [fuzz-exec] export wait_and_log
 ;; CHECK-NEXT: [LoggingExternalInterface logging 2]
 (func $wait_and_log (export "wait_and_log")
  (call $log
   (memory.atomic.wait64 $shared
    (i32.const 0)
    (i64.const 0)
    (i64.const 0)
   )
  )
 )

 ;; CHECK:      [fuzz-exec] export wait_unshared
 ;; CHECK-NEXT: [trap cannot atomic.wait a non-shared memory]
 (func $wait_unshared (export "wait_unshared")
  ;; Waiting on an unshared memory traps.
  (drop
   (memory.atomic.wait32 $unshared
    (i32.const 0)
    (i32.const 0)
    (i64.const 0)
   )
  )
 )
)