[PATCH] D17074: Sparc back-end. Repair of incorrect floating-point condition encodings.

James Y Knight via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 10 09:51:51 PST 2016


This revision was automatically updated to reflect the committed changes.
Closed by commit rL260390: [SPARC] Repair floating-point condition encodings in assembly parser. (authored by jyknight).

Changed prior to commit:
  http://reviews.llvm.org/D17074?vs=47451&id=47476#toc

Repository:
  rL LLVM

http://reviews.llvm.org/D17074

Files:
  llvm/trunk/lib/Target/Sparc/SparcInstrAliases.td
  llvm/trunk/test/MC/Sparc/sparc-ctrl-instructions.s
  llvm/trunk/test/MC/Sparc/sparc64-ctrl-instructions.s

Index: llvm/trunk/test/MC/Sparc/sparc64-ctrl-instructions.s
===================================================================
--- llvm/trunk/test/MC/Sparc/sparc64-ctrl-instructions.s
+++ llvm/trunk/test/MC/Sparc/sparc64-ctrl-instructions.s
@@ -770,6 +770,18 @@
         ! CHECK-NEXT:         ! fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br19
         bpos,a,pt %xcc, .BB0
 
+        ! CHECK:             fba %fcc0, .BB0                        ! encoding: [0x11,0b01001AAA,A,A]
+        ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br19
+        fba %fcc0, .BB0
+
+        ! CHECK:             fba %fcc0, .BB0                        ! encoding: [0x11,0b01001AAA,A,A]
+        ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br19
+        fb %fcc0, .BB0
+
+        ! CHECK:             fbn %fcc0, .BB0                        ! encoding: [0x01,0b01001AAA,A,A]
+        ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br19
+        fbn %fcc0, .BB0
+
         ! CHECK:             fbu %fcc0, .BB0                      ! encoding: [0x0f,0b01001AAA,A,A]
         ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br19
         fbu %fcc0, .BB0
Index: llvm/trunk/test/MC/Sparc/sparc-ctrl-instructions.s
===================================================================
--- llvm/trunk/test/MC/Sparc/sparc-ctrl-instructions.s
+++ llvm/trunk/test/MC/Sparc/sparc-ctrl-instructions.s
@@ -124,13 +124,26 @@
         ! CHECK-NEXT:         ! fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br22
         bvs .BB0
 
+        ! CHECK:             fba .BB0                        ! encoding: [0x11,0b10AAAAAA,A,A]
+        ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br22
+        fba .BB0
+
+        ! CHECK:             fba .BB0                        ! encoding: [0x11,0b10AAAAAA,A,A]
+        ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br22
+        fb .BB0
+
+        ! CHECK:             fbn .BB0                        ! encoding: [0x01,0b10AAAAAA,A,A]
+        ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br22
+        fbn .BB0
+
         ! CHECK:             fbu .BB0                        ! encoding: [0x0f,0b10AAAAAA,A,A]
         ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br22
         fbu .BB0
 
         ! CHECK:             fbg .BB0                        ! encoding: [0x0d,0b10AAAAAA,A,A]
         ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br22
         fbg .BB0
+
         ! CHECK:             fbug .BB0                       ! encoding: [0x0b,0b10AAAAAA,A,A]
         ! CHECK-NEXT:                                        !   fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br22
         fbug .BB0
Index: llvm/trunk/lib/Target/Sparc/SparcInstrAliases.td
===================================================================
--- llvm/trunk/lib/Target/Sparc/SparcInstrAliases.td
+++ llvm/trunk/lib/Target/Sparc/SparcInstrAliases.td
@@ -267,9 +267,9 @@
 defm : int_cond_alias<"vc",   0b1111>;
 defm : int_cond_alias<"vs",   0b0111>;
 
-defm : fp_cond_alias<"a",     0b0000>;
-defm : fp_cond_alias<"",      0b0000>; // same as a; gnu asm, not in manual
-defm : fp_cond_alias<"n",     0b1000>;
+defm : fp_cond_alias<"a",     0b1000>;
+defm : fp_cond_alias<"",      0b1000>; // same as a; gnu asm, not in manual
+defm : fp_cond_alias<"n",     0b0000>;
 defm : fp_cond_alias<"u",     0b0111>;
 defm : fp_cond_alias<"g",     0b0110>;
 defm : fp_cond_alias<"ug",    0b0101>;


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17074.47476.patch
Type: text/x-patch
Size: 3958 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160210/7c8c8a2b/attachment.bin>


More information about the llvm-commits mailing list