73 lines
2 KiB
WebAssembly Text Format
73 lines
2 KiB
WebAssembly Text Format
(module
|
|
(memory (export "z") 0 0)
|
|
(memory (export "memory-2-inf") 2)
|
|
(memory (export "memory-2-4") 2 4)
|
|
)
|
|
|
|
(register "test")
|
|
|
|
(module
|
|
(import "test" "z" (memory 0))
|
|
(memory $m (import "spectest" "memory") 1 2)
|
|
(data (memory 1) (i32.const 10) "\10")
|
|
|
|
(func (export "load") (param i32) (result i32) (i32.load $m (local.get 0)))
|
|
)
|
|
|
|
(assert_return (invoke "load" (i32.const 0)) (i32.const 0))
|
|
(assert_return (invoke "load" (i32.const 10)) (i32.const 16))
|
|
(assert_return (invoke "load" (i32.const 8)) (i32.const 0x100000))
|
|
(assert_trap (invoke "load" (i32.const 1000000)) "out of bounds memory access")
|
|
|
|
(module
|
|
(memory (import "spectest" "memory") 1 2)
|
|
(data (memory 0) (i32.const 10) "\10")
|
|
|
|
(func (export "load") (param i32) (result i32) (i32.load (local.get 0)))
|
|
)
|
|
(assert_return (invoke "load" (i32.const 0)) (i32.const 0))
|
|
(assert_return (invoke "load" (i32.const 10)) (i32.const 16))
|
|
(assert_return (invoke "load" (i32.const 8)) (i32.const 0x100000))
|
|
(assert_trap (invoke "load" (i32.const 1000000)) "out of bounds memory access")
|
|
|
|
(module
|
|
(import "test" "memory-2-inf" (memory 2))
|
|
(import "test" "memory-2-inf" (memory 1))
|
|
(import "test" "memory-2-inf" (memory 0))
|
|
)
|
|
|
|
(module
|
|
(import "spectest" "memory" (memory 1))
|
|
(import "spectest" "memory" (memory 0))
|
|
(import "spectest" "memory" (memory 1 2))
|
|
(import "spectest" "memory" (memory 0 2))
|
|
(import "spectest" "memory" (memory 1 3))
|
|
(import "spectest" "memory" (memory 0 3))
|
|
)
|
|
|
|
(assert_unlinkable
|
|
(module (import "test" "unknown" (memory 1)))
|
|
"unknown import"
|
|
)
|
|
(assert_unlinkable
|
|
(module (import "spectest" "unknown" (memory 1)))
|
|
"unknown import"
|
|
)
|
|
|
|
(assert_unlinkable
|
|
(module (import "test" "memory-2-inf" (memory 3)))
|
|
"incompatible import type"
|
|
)
|
|
(assert_unlinkable
|
|
(module (import "test" "memory-2-inf" (memory 2 3)))
|
|
"incompatible import type"
|
|
)
|
|
(assert_unlinkable
|
|
(module (import "spectest" "memory" (memory 2)))
|
|
"incompatible import type"
|
|
)
|
|
(assert_unlinkable
|
|
(module (import "spectest" "memory" (memory 1 1)))
|
|
"incompatible import type"
|
|
)
|
|
|