mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-12-08 06:09:58 +00:00
LibJS: Some Bytecode.def fixes
- Add missing @nothrow to a bunch of instructions. - Rename fields that were colliding between base and derived class.
This commit is contained in:
parent
2d76e21cfd
commit
702977373c
Notes:
github-actions[bot]
2025-11-30 10:55:01 +00:00
Author: https://github.com/awesomekling
Commit: 702977373c
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/6977
2 changed files with 23 additions and 4 deletions
|
|
@ -134,6 +134,7 @@ endop
|
||||||
|
|
||||||
op ContinuePendingUnwind < Instruction
|
op ContinuePendingUnwind < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_resume_target: Label
|
m_resume_target: Label
|
||||||
endop
|
endop
|
||||||
|
|
||||||
|
|
@ -161,7 +162,7 @@ endop
|
||||||
op CreateImmutableBinding < Instruction
|
op CreateImmutableBinding < Instruction
|
||||||
m_environment: Operand
|
m_environment: Operand
|
||||||
m_identifier: IdentifierTableIndex
|
m_identifier: IdentifierTableIndex
|
||||||
m_strict: bool
|
m_strict_binding: bool
|
||||||
endop
|
endop
|
||||||
|
|
||||||
op CreateMutableBinding < Instruction
|
op CreateMutableBinding < Instruction
|
||||||
|
|
@ -236,6 +237,7 @@ endop
|
||||||
|
|
||||||
op End < Instruction
|
op End < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_value: Operand
|
m_value: Operand
|
||||||
endop
|
endop
|
||||||
|
|
||||||
|
|
@ -245,6 +247,7 @@ endop
|
||||||
|
|
||||||
op EnterUnwindContext < Instruction
|
op EnterUnwindContext < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_entry_point: Label
|
m_entry_point: Label
|
||||||
endop
|
endop
|
||||||
|
|
||||||
|
|
@ -451,17 +454,20 @@ endop
|
||||||
|
|
||||||
op Jump < Instruction
|
op Jump < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_target: Label
|
m_target: Label
|
||||||
endop
|
endop
|
||||||
|
|
||||||
op JumpFalse < Instruction
|
op JumpFalse < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_condition: Operand
|
m_condition: Operand
|
||||||
m_target: Label
|
m_target: Label
|
||||||
endop
|
endop
|
||||||
|
|
||||||
op JumpGreaterThan < Instruction
|
op JumpGreaterThan < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_lhs: Operand
|
m_lhs: Operand
|
||||||
m_rhs: Operand
|
m_rhs: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
|
|
@ -470,6 +476,7 @@ endop
|
||||||
|
|
||||||
op JumpGreaterThanEquals < Instruction
|
op JumpGreaterThanEquals < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_lhs: Operand
|
m_lhs: Operand
|
||||||
m_rhs: Operand
|
m_rhs: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
|
|
@ -478,6 +485,7 @@ endop
|
||||||
|
|
||||||
op JumpIf < Instruction
|
op JumpIf < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_condition: Operand
|
m_condition: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
m_false_target: Label
|
m_false_target: Label
|
||||||
|
|
@ -485,6 +493,7 @@ endop
|
||||||
|
|
||||||
op JumpLessThan < Instruction
|
op JumpLessThan < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_lhs: Operand
|
m_lhs: Operand
|
||||||
m_rhs: Operand
|
m_rhs: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
|
|
@ -493,6 +502,7 @@ endop
|
||||||
|
|
||||||
op JumpLessThanEquals < Instruction
|
op JumpLessThanEquals < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_lhs: Operand
|
m_lhs: Operand
|
||||||
m_rhs: Operand
|
m_rhs: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
|
|
@ -501,6 +511,7 @@ endop
|
||||||
|
|
||||||
op JumpLooselyEquals < Instruction
|
op JumpLooselyEquals < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_lhs: Operand
|
m_lhs: Operand
|
||||||
m_rhs: Operand
|
m_rhs: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
|
|
@ -509,6 +520,7 @@ endop
|
||||||
|
|
||||||
op JumpLooselyInequals < Instruction
|
op JumpLooselyInequals < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_lhs: Operand
|
m_lhs: Operand
|
||||||
m_rhs: Operand
|
m_rhs: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
|
|
@ -517,6 +529,7 @@ endop
|
||||||
|
|
||||||
op JumpNullish < Instruction
|
op JumpNullish < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_condition: Operand
|
m_condition: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
m_false_target: Label
|
m_false_target: Label
|
||||||
|
|
@ -524,6 +537,7 @@ endop
|
||||||
|
|
||||||
op JumpStrictlyEquals < Instruction
|
op JumpStrictlyEquals < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_lhs: Operand
|
m_lhs: Operand
|
||||||
m_rhs: Operand
|
m_rhs: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
|
|
@ -532,6 +546,7 @@ endop
|
||||||
|
|
||||||
op JumpStrictlyInequals < Instruction
|
op JumpStrictlyInequals < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_lhs: Operand
|
m_lhs: Operand
|
||||||
m_rhs: Operand
|
m_rhs: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
|
|
@ -540,12 +555,14 @@ endop
|
||||||
|
|
||||||
op JumpTrue < Instruction
|
op JumpTrue < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_condition: Operand
|
m_condition: Operand
|
||||||
m_target: Label
|
m_target: Label
|
||||||
endop
|
endop
|
||||||
|
|
||||||
op JumpUndefined < Instruction
|
op JumpUndefined < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_condition: Operand
|
m_condition: Operand
|
||||||
m_true_target: Label
|
m_true_target: Label
|
||||||
m_false_target: Label
|
m_false_target: Label
|
||||||
|
|
@ -604,6 +621,7 @@ op Mod < Instruction
|
||||||
endop
|
endop
|
||||||
|
|
||||||
op Mov < Instruction
|
op Mov < Instruction
|
||||||
|
@nothrow
|
||||||
m_dst: Operand
|
m_dst: Operand
|
||||||
m_src: Operand
|
m_src: Operand
|
||||||
endop
|
endop
|
||||||
|
|
@ -954,13 +972,14 @@ endop
|
||||||
|
|
||||||
op ScheduleJump < Instruction
|
op ScheduleJump < Instruction
|
||||||
@terminator
|
@terminator
|
||||||
|
@nothrow
|
||||||
m_target: Label
|
m_target: Label
|
||||||
endop
|
endop
|
||||||
|
|
||||||
op SetCompletionType < Instruction
|
op SetCompletionType < Instruction
|
||||||
@nothrow
|
@nothrow
|
||||||
m_completion: Operand
|
m_completion: Operand
|
||||||
m_type: Completion::Type
|
m_completion_type: Completion::Type
|
||||||
endop
|
endop
|
||||||
|
|
||||||
op SetGlobal < Instruction
|
op SetGlobal < Instruction
|
||||||
|
|
|
||||||
|
|
@ -3284,13 +3284,13 @@ void SetCompletionType::execute_impl(Bytecode::Interpreter& interpreter) const
|
||||||
{
|
{
|
||||||
auto& completion_cell = static_cast<CompletionCell&>(interpreter.get(m_completion).as_cell());
|
auto& completion_cell = static_cast<CompletionCell&>(interpreter.get(m_completion).as_cell());
|
||||||
auto completion = completion_cell.completion();
|
auto completion = completion_cell.completion();
|
||||||
completion_cell.set_completion(Completion { m_type, completion.value() });
|
completion_cell.set_completion(Completion { m_completion_type, completion.value() });
|
||||||
}
|
}
|
||||||
|
|
||||||
ThrowCompletionOr<void> CreateImmutableBinding::execute_impl(Bytecode::Interpreter& interpreter) const
|
ThrowCompletionOr<void> CreateImmutableBinding::execute_impl(Bytecode::Interpreter& interpreter) const
|
||||||
{
|
{
|
||||||
auto& environment = as<Environment>(interpreter.get(m_environment).as_cell());
|
auto& environment = as<Environment>(interpreter.get(m_environment).as_cell());
|
||||||
return environment.create_immutable_binding(interpreter.vm(), interpreter.get_identifier(m_identifier), m_strict);
|
return environment.create_immutable_binding(interpreter.vm(), interpreter.get_identifier(m_identifier), m_strict_binding);
|
||||||
}
|
}
|
||||||
|
|
||||||
ThrowCompletionOr<void> CreateMutableBinding::execute_impl(Bytecode::Interpreter& interpreter) const
|
ThrowCompletionOr<void> CreateMutableBinding::execute_impl(Bytecode::Interpreter& interpreter) const
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue