From: Chris Lattner Date: Wed, 7 Jun 2006 22:20:03 +0000 (+0000) Subject: Fix a bug where the types for inlineasm nodes were not properly entered into X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=101cefa14a09c6e0fad5dd5ddbd84bdf7cef4286;p=oota-llvm.git Fix a bug where the types for inlineasm nodes were not properly entered into the compaction table for a function. This broke compilation of hexxagon on darwin/x86 with recent changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28717 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Bytecode/Writer/SlotCalculator.cpp b/lib/Bytecode/Writer/SlotCalculator.cpp index 26bd1be8f67..6ac295ca1c4 100644 --- a/lib/Bytecode/Writer/SlotCalculator.cpp +++ b/lib/Bytecode/Writer/SlotCalculator.cpp @@ -275,7 +275,7 @@ void SlotCalculator::incorporateFunction(const Function *F) { SC_DEBUG("begin processFunction!\n"); // If we emitted all of the function constants, build a compaction table. - if ( ModuleContainsAllFunctionConstants) + if (ModuleContainsAllFunctionConstants) buildCompactionTable(F); // Update the ModuleLevel entries to be accurate. @@ -465,7 +465,7 @@ void SlotCalculator::buildCompactionTable(const Function *F) { for (const_inst_iterator I = inst_begin(F), E = inst_end(F); I != E; ++I) { getOrCreateCompactionTableSlot(I->getType()); for (unsigned op = 0, e = I->getNumOperands(); op != e; ++op) - if (isa(I->getOperand(op))) + if (isa(I->getOperand(op)) || isa(I->getOperand(op))) getOrCreateCompactionTableSlot(I->getOperand(op)); }