tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

global-get.js (739B)


      1 // global.get cannot refer to self or after globals after self
      2 
      3 assertErrorMessage(() => wasmEvalText(`(module
      4 (global i32 global.get 0)
      5 )`), WebAssembly.CompileError, /global/);
      6 
      7 assertErrorMessage(() => wasmEvalText(`(module
      8 (global i32 global.get 1)
      9 (global i32 i32.const 0)
     10 )`), WebAssembly.CompileError, /global/);
     11 
     12 // global.get works on previous globals
     13 
     14 {
     15 let {func, b, c, e} = wasmEvalText(`(module
     16 	(func $func (export "func"))
     17 
     18 	(global $a i32 i32.const 1)
     19 	(global $b (export "b") i32 global.get $a)
     20 	(global $c (export "c") i32 global.get $b)
     21 
     22 	(global $d funcref ref.func $func)
     23 	(global $e (export "e") funcref global.get $d)
     24 )`).exports;
     25 assertEq(b.value, 1);
     26 assertEq(c.value, 1);
     27 assertEq(e.value, func);
     28 }