summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode/Writer/SlotCalculator.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-06-07 22:20:03 +0000
committerChris Lattner <sabre@nondot.org>2006-06-07 22:20:03 +0000
commit5ff8b962c8a9a406c7e1c4b3969e25f5c749896d (patch)
tree8e0e12284dc6a4b4f885e8829773c5a8f37853db /llvm/lib/Bytecode/Writer/SlotCalculator.cpp
parentfa80953280b7238b94374e6be12ccc371d2acaf3 (diff)
downloadbcm5719-llvm-5ff8b962c8a9a406c7e1c4b3969e25f5c749896d.tar.gz
bcm5719-llvm-5ff8b962c8a9a406c7e1c4b3969e25f5c749896d.zip
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. llvm-svn: 28717
Diffstat (limited to 'llvm/lib/Bytecode/Writer/SlotCalculator.cpp')
-rw-r--r--llvm/lib/Bytecode/Writer/SlotCalculator.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Bytecode/Writer/SlotCalculator.cpp b/llvm/lib/Bytecode/Writer/SlotCalculator.cpp
index 26bd1be8f67..6ac295ca1c4 100644
--- a/llvm/lib/Bytecode/Writer/SlotCalculator.cpp
+++ b/llvm/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));
}
OpenPOWER on IntegriCloud