From 73c2777a0e1c9ae5fda39da8773d9bc35b1c4dc5 Mon Sep 17 00:00:00 2001 From: Duraid Madina Date: Thu, 31 Mar 2005 07:32:32 +0000 Subject: [PATCH] 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 --- llvm/lib/Target/IA64/IA64InstrInfo.td | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/llvm/lib/Target/IA64/IA64InstrInfo.td b/llvm/lib/Target/IA64/IA64InstrInfo.td index f3b014d86393..6103a375fbdc 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),