diff options
| author | Duraid Madina <duraid@octopus.com.au> | 2005-03-31 07:32:32 +0000 |
|---|---|---|
| committer | Duraid Madina <duraid@octopus.com.au> | 2005-03-31 07:32:32 +0000 |
| commit | 73c2777a0e1c9ae5fda39da8773d9bc35b1c4dc5 (patch) | |
| tree | e24747f5dcacc681c7a805a4996023c722e7d2cc /llvm/lib | |
| parent | eddfff338a35f5ddcd08174c70581d7a500c3522 (diff) | |
| download | bcm5719-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.td | 8 |
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), |

