diff options
author | Chris Lattner <sabre@nondot.org> | 2006-06-07 22:20:03 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2006-06-07 22:20:03 +0000 |
commit | 101cefa14a09c6e0fad5dd5ddbd84bdf7cef4286 (patch) | |
tree | 0ce06ed075a0e8a7a2e964a09b7fc8b019fe62f6 /lib/Bytecode/Writer/SlotCalculator.cpp | |
parent | 454d85be66212323f6386ab8bffb77b0b57a2467 (diff) |
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
Diffstat (limited to 'lib/Bytecode/Writer/SlotCalculator.cpp')
-rw-r--r-- | lib/Bytecode/Writer/SlotCalculator.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Bytecode/Writer/SlotCalculator.cpp b/lib/Bytecode/Writer/SlotCalculator.cpp index 26bd1be8f6..6ac295ca1c 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<Constant>(I->getOperand(op))) + if (isa<Constant>(I->getOperand(op)) || isa<InlineAsm>(I->getOperand(op))) getOrCreateCompactionTableSlot(I->getOperand(op)); } |