Andreas Kling
|
2e6c02f088
|
LibJS/JIT: Support Imm32 operands in Assembler::push()
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
71e41418f6
|
LibJS/JIT: Do "enter & leave" sequence in x86_64 machine code
This ensures that the stack pointer is restored before we return from
the jitted code.
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
814b07a9c2
|
LibJS/JIT: Add Assembler::jump_if_equal()
And also factor out cmp() so we don't have to repeat it.
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
a7bad26b63
|
LibJS/JIT: Add missing unistd.h include (fixes Clang build)
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
c21978ead6
|
LibJS/JIT: Remove unused functions from Assembler
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
1e8c6d3b06
|
LibJS/JIT: Use mov() helper in Assembler::native_call()
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
e7ce3d271a
|
LibJS/JIT: Add Assembler::add() and sub() helpers
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
10dcb4d53a
|
LibJS/JIT: Add Assembler::push() and pop() helpers
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
acece9057e
|
LibJS/JIT: Make Assembler::Reg represent X86 registers
And move the generic register aliases to JIT::Compiler.
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
f9041c7b31
|
LibJS/JIT: Fast path for boolean JS::Value in compile_to_boolean()
|
2023-10-27 19:07:22 +02:00 |
|
Andreas Kling
|
babdc0a25b
|
LibJS: Work-in-progress JIT compiler :^)
|
2023-10-27 19:07:22 +02:00 |
|