memory-aliasing.js (686B)
1 var i = wasmEvalText( 2 `(module 3 (memory 1) (data (i32.const 0) "\\01\\02\\03\\04\\05\\06\\07\\08") 4 (func $off1 (param $base i32) (result i32) 5 (i32.add 6 (i32.load8_u (local.get $base)) 7 (i32.load8_u offset=1 (local.get $base))) 8 ) 9 (export "off1" (func $off1)) 10 (func $off2 (param $base i32) (result i32) 11 (i32.add 12 (i32.load8_u offset=1 (local.get $base)) 13 (i32.load8_u offset=2 (local.get $base))) 14 ) 15 (export "off2" (func $off2)) 16 )`).exports; 17 assertEq(i.off1(0), 3); 18 assertEq(i.off1(1), 5); 19 assertEq(i.off1(2), 7); 20 assertEq(i.off1(3), 9); 21 assertEq(i.off2(0), 5); 22 assertEq(i.off2(1), 7); 23 assertEq(i.off2(2), 9); 24 assertEq(i.off2(3), 11);