Forráskód Böngészése

LibJS/JIT: Store the VM register array base in RBX

This allows us to use the displacement-less MOV encoding when accessing
register $0 (the accumulator).

This reduces code size by 158 KiB on Kraken/ai-astar.js :^)
Andreas Kling 1 éve
szülő
commit
9c0c672839
1 módosított fájl, 1 hozzáadás és 1 törlés
  1. 1 1
      Userland/Libraries/LibJS/JIT/Compiler.h

+ 1 - 1
Userland/Libraries/LibJS/JIT/Compiler.h

@@ -32,7 +32,7 @@ private:
     static constexpr auto ARG5 = Assembler::Reg::R9;
     static constexpr auto RET = Assembler::Reg::RAX;
     static constexpr auto STACK_POINTER = Assembler::Reg::RSP;
-    static constexpr auto REGISTER_ARRAY_BASE = Assembler::Reg::R13;
+    static constexpr auto REGISTER_ARRAY_BASE = Assembler::Reg::RBX;
     static constexpr auto LOCALS_ARRAY_BASE = Assembler::Reg::R14;
     static constexpr auto UNWIND_CONTEXT_BASE = Assembler::Reg::R15;
 #    endif