| Index: lib/CodeGen/CGExprScalar.cpp
|
| ===================================================================
|
| --- lib/CodeGen/CGExprScalar.cpp (revision 138929)
|
| +++ lib/CodeGen/CGExprScalar.cpp (working copy)
|
| @@ -2072,6 +2072,7 @@
|
| BuiltinType::Kind ElemKind) {
|
| switch (ElemKind) {
|
| default: assert(0 && "unexpected element type");
|
| +#if 0
|
| case BuiltinType::Char_U:
|
| case BuiltinType::UChar:
|
| return (IT == VCMPEQ) ? llvm::Intrinsic::ppc_altivec_vcmpequb_p :
|
| @@ -2104,6 +2105,7 @@
|
| return (IT == VCMPEQ) ? llvm::Intrinsic::ppc_altivec_vcmpeqfp_p :
|
| llvm::Intrinsic::ppc_altivec_vcmpgtfp_p;
|
| break;
|
| +#endif
|
| }
|
| return llvm::Intrinsic::not_intrinsic;
|
| }
|
| @@ -2162,8 +2164,13 @@
|
| case BO_LE:
|
| if (ElementKind == BuiltinType::Float) {
|
| CR6 = CR6_LT;
|
| +#if defined(TARGET_ENABLED_POWERPC)
|
| ID = llvm::Intrinsic::ppc_altivec_vcmpgefp_p;
|
| std::swap(FirstVecArg, SecondVecArg);
|
| +#else
|
| + llvm_unreachable("Using Intrinsic::ppc_altivec_vcmpgefp_p w/out"
|
| + " TARGET_ENABLED_POWERPC defined!");
|
| +#endif // TARGET_ENABLED_POWERPC
|
| }
|
| else {
|
| CR6 = CR6_EQ;
|
| @@ -2173,7 +2180,12 @@
|
| case BO_GE:
|
| if (ElementKind == BuiltinType::Float) {
|
| CR6 = CR6_LT;
|
| +#if defined(TARGET_ENABLED_POWERPC)
|
| ID = llvm::Intrinsic::ppc_altivec_vcmpgefp_p;
|
| +#else
|
| + llvm_unreachable("Using Intrinsic::ppc_altivec_vcmpgefp_p w/out"
|
| + " TARGET_ENABLED_POWERPC defined!");
|
| +#endif // TARGET_ENABLED_POWERPC
|
| }
|
| else {
|
| CR6 = CR6_EQ;
|
|
|