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; |