[llvm-commits] CVS: llvm/lib/Target/IA64/IA64InstrInfo.td
Duraid Madina
duraid at octopus.com.au
Tue Jan 10 17:21:24 PST 2006
Changes in directory llvm/lib/Target/IA64:
IA64InstrInfo.td updated: 1.35 -> 1.36
---
Log message:
add support for selecting bools
FIXME: this is commented out because it makes tblgen go a bit fruity
---
Diffs of the changes: (+5 -1)
IA64InstrInfo.td | 6 +++++-
1 files changed, 5 insertions(+), 1 deletion(-)
Index: llvm/lib/Target/IA64/IA64InstrInfo.td
diff -u llvm/lib/Target/IA64/IA64InstrInfo.td:1.35 llvm/lib/Target/IA64/IA64InstrInfo.td:1.36
--- llvm/lib/Target/IA64/IA64InstrInfo.td:1.35 Mon Dec 26 03:11:45 2005
+++ llvm/lib/Target/IA64/IA64InstrInfo.td Tue Jan 10 19:21:12 2006
@@ -424,11 +424,15 @@
"($qp) mov $dst = $src;;">;
}
-// TODO: select bools
def SELECTINT : Pat<(select PR:$which, GR:$src1, GR:$src2),
(CMOV (MOV GR:$src2), GR:$src1, PR:$which)>; // note order!
def SELECTFP : Pat<(select PR:$which, FP:$src1, FP:$src2),
(CFMOV (FMOV FP:$src2), FP:$src1, PR:$which)>; // note order!
+// TODO: can do this faster, w/o using any integer regs (see pattern isel)
+// FIXME: this makes tblgen cough and splutter:
+// Assertion && "Unknown node in result pattern!"'
+//def SELECTBOOL : Pat<(select PR:$which, PR:$src1, PR:$src2), // note order!
+// (trunc (CMOV (MOV (zext PR:$src2)), (zext PR:$src1), PR:$which))>;
// load constants of various sizes // FIXME: prettyprint -ve constants
def : Pat<(i64 immSExt14:$imm), (ADDS r0, immSExt14:$imm)>;
More information about the llvm-commits
mailing list