Skip to content

Lower short-circuited jumps through unified bytecode - #2988

Merged
rogeralsing merged 1 commit into
mainfrom
codex/unified-bytecode-loop-29-short-circuit
Jun 1, 2026
Merged

Lower short-circuited jumps through unified bytecode#2988
rogeralsing merged 1 commit into
mainfrom
codex/unified-bytecode-loop-29-short-circuit

Conversation

@rogeralsing

Copy link
Copy Markdown
Contributor

Summary

  • lower expression bytecode JumpIfShortCircuited into unified bytecode instead of declining the shape
  • preserve optional-chain short-circuit state in the unified VM so ordinary undefined and short-circuited undefined stay distinct
  • refresh the unified bytecode expansion contract now that the short-circuit expression op is covered
  • keep direct VM named-slot preloads from being overwritten by unrelated fallback environment slots

Verification

  • rtk dotnet test tests/Asynkron.JsEngine.Tests -c Release --filter "FullyQualifiedName~UnifiedBytecodeProductionEligibilityTests.Evaluate_ObjectMethodAndAccessorLiteralShapes_AcceptAndVmDefinesProperty"
  • rtk dotnet test tests/Asynkron.JsEngine.Tests -c Release --filter "FullyQualifiedNameUnifiedBytecodeProductionEligibilityTests|FullyQualifiedNameUnifiedBytecodeProductionInvocationTests|FullyQualifiedName~ExpressionProgramCoverageMapTests"
  • rtk dotnet test tests/Asynkron.JsEngine.Tests -c Release --filter "FullyQualifiedNameTdzClosureTest.Debug_InnerFunctionCanWriteLetAfterInit|FullyQualifiedNameTdzClosureTest.H4_VarIsHoisted_ShouldNotThrow|FullyQualifiedNameIrLoopEnvironmentTests.LogicalCompoundAssignment_UsesLogicalAssignmentInstruction|FullyQualifiedNameIrLoopEnvironmentTests.ConditionalExpression_ReusesBranchAndDedicatedInstructionForms|FullyQualifiedName~ConstAssignmentTests.ConstAssignments_AreCaughtAsTypeErrors"
  • rtk git diff --check

Copilot AI review requested due to automatic review settings June 1, 2026 16:42
@rogeralsing
rogeralsing merged commit 4dd4a1e into main Jun 1, 2026
1 check failed
@rogeralsing
rogeralsing deleted the codex/unified-bytecode-loop-29-short-circuit branch June 1, 2026 16:43

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants