[llvm-commits] CVS: llvm/lib/Target/SparcV9/SparcV9.td
Brian Gaeke
gaeke at cs.uiuc.edu
Wed Jun 9 16:56:08 PDT 2004
Changes in directory llvm/lib/Target/SparcV9:
SparcV9.td updated: 1.31 -> 1.32
---
Log message:
Fix encoding of ST*FSR instructions.
---
Diffs of the changes: (+7 -7)
Index: llvm/lib/Target/SparcV9/SparcV9.td
diff -u llvm/lib/Target/SparcV9/SparcV9.td:1.31 llvm/lib/Target/SparcV9/SparcV9.td:1.32
--- llvm/lib/Target/SparcV9/SparcV9.td:1.31 Sun Apr 25 02:04:49 2004
+++ llvm/lib/Target/SparcV9/SparcV9.td Wed Jun 9 16:54:58 2004
@@ -739,17 +739,17 @@
def STQFi : F3_2rd<3, 0b100110, "stq">; // stq r, [r+i]
*/
-// FIXME: An encoding needs to be chosen here, because STFSRx expect rd=0,
-// while STXFSRx expect rd=1, but assembly syntax dictates %fsr as first arg.
-// These are being disabled because they aren't used in the SparcV9 backend.
+// WARNING: We encode %fsr as 1, because we only use STXFSRx, but STFSRx wants
+// you to encode %fsr as 0. If STFSRx instrs are ever enabled, this will
+// need to be worked around.
/*
let isDeprecated = 1 in {
- def STFSRr : F3_1<3, 0b100101, "st">; // st %fsr, [r+r]
- def STFSRi : F3_2<3, 0b100101, "st">; // st %fsr, [r+i]
+ def STFSRr : F3_1rd<3, 0b100101, "st">; // st %fsr, [r+r]
+ def STFSRi : F3_2rd<3, 0b100101, "st">; // st %fsr, [r+i]
}
*/
-def STXFSRr : F3_1<3, 0b100101, "stx">; // stx %fsr, [r+r]
-def STXFSRi : F3_2<3, 0b100101, "stx">; // stx %fsr, [r+i]
+def STXFSRr : F3_1rd<3, 0b100101, "stx">; // stx %fsr, [r+r]
+def STXFSRi : F3_2rd<3, 0b100101, "stx">; // stx %fsr, [r+i]
// Section A.53: Store Floating-Point into Alternate Space - p227
// Not currently used in the SparcV9 backend
More information about the llvm-commits
mailing list