Always store multiply-used vector compares in temporary variables (C++ output).

This commit is contained in:
Matt Pharr
2012-06-06 10:03:03 -07:00
parent 7b6bd90903
commit 3c869802fb

View File

@@ -380,7 +380,7 @@ namespace {
static bool isInlinableInst(const Instruction &I) {
// Always inline cmp instructions, even if they are shared by multiple
// expressions. GCC generates horrible code if we don't.
if (isa<CmpInst>(I))
if (isa<CmpInst>(I) && isa<VectorType>(I.getType()) == false)
return true;
// Must be an expression, must be used exactly once. If it is dead, we