Fix __ordered and _unordered floating point functions for C++ target.

Fixes include adding "_float" and "_double" suffixes as appropriate as well
as providing a number of missing implementations.

This fixes a number of failures in the half* tests.
This commit is contained in:
Matt Pharr
2012-07-09 14:35:51 -07:00
parent 107669686c
commit bc7775aef2
6 changed files with 81 additions and 22 deletions

View File

@@ -3261,7 +3261,7 @@ lPredicateToString(llvm::CmpInst::Predicate p) {
case llvm::ICmpInst::ICMP_SGT: return "__signed_greater_than";
case llvm::FCmpInst::FCMP_ORD: return "__ordered";
case llvm::FCmpInst::FCMP_UNO: return "__cmpunord";
case llvm::FCmpInst::FCMP_UNO: return "__unordered";
case llvm::FCmpInst::FCMP_UEQ: return "__equal";
case llvm::FCmpInst::FCMP_UNE: return "__not_equal";
case llvm::FCmpInst::FCMP_ULT: return "__less_than";