ladybird/Tests/LibJS/Bytecode/expected/var-shadow-in-default-param.txt
Andreas Kling cd7ff16106 LibJS: Emit eager environment coordinates in bytecode
Track bytecode-created declarative bindings while generating code so
most environment-coordinate operands can be emitted eagerly. Dynamic
lookup instructions remain for scopes where eval or object environments
can change resolution at runtime.

This lets the static coordinate bytecode variants run without cached-
vs-uncached branches or eval poison checks, and rebaselines bytecode
output for the newly eager coordinate operands.
2026-05-18 20:35:14 +02:00

58 lines
1.5 KiB
Text

$542e1f1b var-shadow-in-default-param.js:7:1
Registers: 8
Blocks: 1
Constants:
[0] = String("outer")
[1] = Undefined
block0:
[ 0] SetGlobal `shadow`, src:String("outer")
[ 10] GetGlobal dst:reg6, `shadow_in_default`
[ 20] Call dst:reg5, callee:reg6, this_value:Undefined, shadow_in_default
[ 40] GetGlobal dst:reg7, `no_conflict`
[ 50] Call dst:reg6, callee:reg7, this_value:Undefined, no_conflict
[ 70] End value:reg6
shadow_in_default$321d2e1f var-shadow-in-default-param.js:8:32
Registers: 7
Blocks: 3
Constants:
[0] = Undefined
[1] = String("inner")
block0:
[ 0] JumpUndefined condition:arg0, true_target:block1, false_target:block2
block1:
[ 10] DynamicGetInitializedBinding dst:reg5, `shadow`
[ 20] Mov dst:arg0, src:reg5
block2:
[ 30] CreateVariableEnvironment capacity:1
[ 38] GetLexicalEnvironment dst:reg5
[ 40] Mov dst:reg6, src:Undefined
[ 50] CreateVariable `shadow`, is_immutable:false, is_global:false, is_strict:false
[ 60] InitializeVariableBinding `shadow`, src:reg6
[ 78] SetLexicalBinding `shadow`, src:String("inner")
[ 90] Return value:arg0
no_conflict$f0c5f291 var-shadow-in-default-param.js:17:5
Registers: 6
Blocks: 3
Locals: y~0
Constants:
[0] = Int32(1)
[1] = Undefined
[2] = Int32(2)
block0:
[ 0] JumpUndefined condition:arg0, true_target:block1, false_target:block2
block1:
[ 10] Mov dst:arg0, src:Int32(1)
block2:
[ 20] Mov3 dst1:reg5, src1:Undefined, dst2:y~0, src2:reg5, dst3:y~0, src3:Int32(2)
[ 40] Return value:y~0