[llvm] r199974 - [Sparc] Correct quad register list in the asm parser.

Venkatraman Govindaraju venkatra at cs.wisc.edu
Thu Jan 23 21:24:01 PST 2014


Author: venkatra
Date: Thu Jan 23 23:24:01 2014
New Revision: 199974

URL: http://llvm.org/viewvc/llvm-project?rev=199974&view=rev
Log:
[Sparc] Correct quad register list in the asm parser.
Add test cases to check parsing of v9 double registers and their aliased quad registers.

Modified:
    llvm/trunk/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
    llvm/trunk/test/MC/Disassembler/Sparc/sparc-fp.txt
    llvm/trunk/test/MC/Sparc/sparc-fp-instructions.s

Modified: llvm/trunk/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp?rev=199974&r1=199973&r2=199974&view=diff
==============================================================================
--- llvm/trunk/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp (original)
+++ llvm/trunk/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp Thu Jan 23 23:24:01 2014
@@ -117,7 +117,7 @@ public:
   static unsigned QuadFPRegs[32] = {
     Sparc::Q0,  Sparc::Q1,  Sparc::Q2,  Sparc::Q3,
     Sparc::Q4,  Sparc::Q5,  Sparc::Q6,  Sparc::Q7,
-    Sparc::Q8,  Sparc::Q7,  Sparc::Q8,  Sparc::Q9,
+    Sparc::Q8,  Sparc::Q9,  Sparc::Q10, Sparc::Q11,
     Sparc::Q12, Sparc::Q13, Sparc::Q14, Sparc::Q15 };
 
 

Modified: llvm/trunk/test/MC/Disassembler/Sparc/sparc-fp.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Disassembler/Sparc/sparc-fp.txt?rev=199974&r1=199973&r2=199974&view=diff
==============================================================================
--- llvm/trunk/test/MC/Disassembler/Sparc/sparc-fp.txt (original)
+++ llvm/trunk/test/MC/Disassembler/Sparc/sparc-fp.txt Thu Jan 23 23:24:01 2014
@@ -81,6 +81,12 @@
 # CHECK: faddq %f0, %f4, %f8
 0x91 0xa0 0x08 0x64
 
+# CHECK: faddd %f32, %f34, %f62
+0xbf 0xa0 0x48 0x43
+
+# CHECK: faddq %f32, %f36, %f60
+0xbb 0xa0 0x48 0x65
+
 # CHECK: fsubs %f0, %f4, %f8
 0x91 0xa0 0x08 0xa4
 

Modified: llvm/trunk/test/MC/Sparc/sparc-fp-instructions.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Sparc/sparc-fp-instructions.s?rev=199974&r1=199973&r2=199974&view=diff
==============================================================================
--- llvm/trunk/test/MC/Sparc/sparc-fp-instructions.s (original)
+++ llvm/trunk/test/MC/Sparc/sparc-fp-instructions.s Thu Jan 23 23:24:01 2014
@@ -64,6 +64,12 @@
         faddd %f0, %f4, %f8
         faddq %f0, %f4, %f8
 
+        ! make sure we can handle V9 double registers and their aliased quad registers.
+        ! CHECK: faddd %f32, %f34, %f62           ! encoding: [0xbf,0xa0,0x48,0x43]
+        ! CHECK: faddq %f32, %f36, %f60           ! encoding: [0xbb,0xa0,0x48,0x65]
+        faddd %f32, %f34, %f62
+        faddq %f32, %f36, %f60
+
         ! CHECK: fsubs %f0, %f4, %f8             ! encoding: [0x91,0xa0,0x08,0xa4]
         ! CHECK: fsubd %f0, %f4, %f8             ! encoding: [0x91,0xa0,0x08,0xc4]
         ! CHECK: fsubq %f0, %f4, %f8             ! encoding: [0x91,0xa0,0x08,0xe4]





More information about the llvm-commits mailing list