[llvm-commits] [llvm] r56568 - /llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp

Anton Korobeynikov asl at math.spbu.ru
Wed Sep 24 15:03:06 PDT 2008


Author: asl
Date: Wed Sep 24 17:03:04 2008
New Revision: 56568

URL: http://llvm.org/viewvc/llvm-project?rev=56568&view=rev
Log:
XMM6-XMM15 are callee-saved on Win64. Patch by Nicolas Capens!

Modified:
    llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp

Modified: llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp?rev=56568&r1=56567&r2=56568&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp Wed Sep 24 17:03:04 2008
@@ -185,8 +185,11 @@
   };
 
   static const unsigned CalleeSavedRegsWin64[] = {
-    X86::RBX, X86::RBP, X86::RDI, X86::RSI,
-    X86::R12, X86::R13, X86::R14, X86::R15, 0
+    X86::RBX,   X86::RBP,   X86::RDI,   X86::RSI,
+    X86::R12,   X86::R13,   X86::R14,   X86::R15,
+    X86::XMM6,  X86::XMM7,  X86::XMM8,  X86::XMM9,
+    X86::XMM10, X86::XMM11, X86::XMM12, X86::XMM13,
+    X86::XMM14, X86::XMM15, 0
   };
 
   if (Is64Bit) {
@@ -230,10 +233,15 @@
     &X86::GR64RegClass, &X86::GR64RegClass, 0
   };
   static const TargetRegisterClass * const CalleeSavedRegClassesWin64[] = {
-    &X86::GR64RegClass, &X86::GR64RegClass,
-    &X86::GR64RegClass, &X86::GR64RegClass,
-    &X86::GR64RegClass, &X86::GR64RegClass,
-    &X86::GR64RegClass, &X86::GR64RegClass, 0
+    &X86::GR64RegClass,  &X86::GR64RegClass,
+    &X86::GR64RegClass,  &X86::GR64RegClass,
+    &X86::GR64RegClass,  &X86::GR64RegClass,
+    &X86::GR64RegClass,  &X86::GR64RegClass,
+    &X86::VR128RegClass, &X86::VR128RegClass,
+    &X86::VR128RegClass, &X86::VR128RegClass,
+    &X86::VR128RegClass, &X86::VR128RegClass,
+    &X86::VR128RegClass, &X86::VR128RegClass,
+    &X86::VR128RegClass, &X86::VR128RegClass, 0
   };
 
   if (Is64Bit) {





More information about the llvm-commits mailing list