summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorDuraid Madina <duraid@octopus.com.au>2005-03-31 07:32:32 +0000
committerDuraid Madina <duraid@octopus.com.au>2005-03-31 07:32:32 +0000
commit73c2777a0e1c9ae5fda39da8773d9bc35b1c4dc5 (patch)
treee24747f5dcacc681c7a805a4996023c722e7d2cc /llvm/lib
parenteddfff338a35f5ddcd08174c70581d7a500c3522 (diff)
downloadbcm5719-llvm-73c2777a0e1c9ae5fda39da8773d9bc35b1c4dc5.tar.gz
bcm5719-llvm-73c2777a0e1c9ae5fda39da8773d9bc35b1c4dc5.zip
add what we need to fudge a 'floating point conditional move', this is
used to get FP div-by-zero working properly (shunt the right answer depending on how frcpa sets its predicate output) llvm-svn: 20954
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/IA64/IA64InstrInfo.td8
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/IA64/IA64InstrInfo.td b/llvm/lib/Target/IA64/IA64InstrInfo.td
index f3b014d8639..6103a375fbd 100644
--- a/llvm/lib/Target/IA64/IA64InstrInfo.td
+++ b/llvm/lib/Target/IA64/IA64InstrInfo.td
@@ -59,6 +59,14 @@ let isTwoAddress = 1 in {
"($qp) mov $dst = $src;;">;
}
+def PFMOV : AForm<0x03, 0x0b, (ops FP:$dst, FP:$src, PR:$qp),
+ "($qp) mov $dst = $src;;">;
+
+let isTwoAddress = 1 in {
+ def CFMOV : AForm<0x03, 0x0b, (ops FP:$dst, FP:$src2, FP:$src, PR:$qp),
+ "($qp) mov $dst = $src;;">;
+}
+
let isTwoAddress = 1 in {
def TCMPNE : AForm<0x03, 0x0b,
(ops PR:$dst, PR:$src2, GR:$src3, GR:$src4),
OpenPOWER on IntegriCloud