https://bugs.kde.org/show_bug.cgi?id=384584

Julian Seward <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #2 from Julian Seward <[email protected]> ---
Mostly looks OK to me, except for the bit below:

* why is it in this patch?  It's not related to reordering the allocatable
  registers for amd64.

* even if necessary, is it really correct?  It removes RAX, RCX, RDX and R11
  from the list of caller-saved regs, which will surely cause the allocator
  not to preserve them across calls.  Maybe I misunderstand?

@@ -1460,18 +1460,12 @@ void getRegUsage_AMD64Instr ( HRegUsage* u, const
AMD64Instr* i, Bool mode64 )
          /* This is a bit subtle. */
          /* First off, claim it trashes all the caller-saved regs
             which fall within the register allocator's jurisdiction.
-            These I believe to be: rax rcx rdx rsi rdi r8 r9 r10 r11 
-            and all the xmm registers.
-         */
-         addHRegUse(u, HRmWrite, hregAMD64_RAX());
-         addHRegUse(u, HRmWrite, hregAMD64_RCX());
-         addHRegUse(u, HRmWrite, hregAMD64_RDX());
-         addHRegUse(u, HRmWrite, hregAMD64_RSI());
+            These are: rdi rsi r8 r9 r10 and all the xmm registers. */
          addHRegUse(u, HRmWrite, hregAMD64_RDI());
+         addHRegUse(u, HRmWrite, hregAMD64_RSI());
          addHRegUse(u, HRmWrite, hregAMD64_R8());
          addHRegUse(u, HRmWrite, hregAMD64_R9());
          addHRegUse(u, HRmWrite, hregAMD64_R10());
-         addHRegUse(u, HRmWrite, hregAMD64_R11());
          addHRegUse(u, HRmWrite, hregAMD64_XMM0());
          addHRegUse(u, HRmWrite, hregAMD64_XMM1());
          addHRegUse(u, HRmWrite, hregAMD64_XMM3());

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to