summaryrefslogtreecommitdiffstats
path: root/llvm/lib/VMCore/AsmWriter.cpp
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2008-02-22 03:10:23 +0000
committerDevang Patel <dpatel@apple.com>2008-02-22 03:10:23 +0000
commite665095da163cc6be8bc0dffd32edfd9548045e0 (patch)
tree645b79a030b40aeff4ec8d7393d483cd14d127dc /llvm/lib/VMCore/AsmWriter.cpp
parentb5f5073a1a591dd59028fc01cd04677d3d8eac10 (diff)
downloadbcm5719-llvm-e665095da163cc6be8bc0dffd32edfd9548045e0.tar.gz
bcm5719-llvm-e665095da163cc6be8bc0dffd32edfd9548045e0.zip
Print getresult instruction properly.
llvm-svn: 47473
Diffstat (limited to 'llvm/lib/VMCore/AsmWriter.cpp')
-rw-r--r--llvm/lib/VMCore/AsmWriter.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/lib/VMCore/AsmWriter.cpp b/llvm/lib/VMCore/AsmWriter.cpp
index b1f15c676f0..d376e7f611d 100644
--- a/llvm/lib/VMCore/AsmWriter.cpp
+++ b/llvm/lib/VMCore/AsmWriter.cpp
@@ -1291,6 +1291,19 @@ void AssemblyWriter::printInstruction(const Instruction &I) {
writeOperand(I.getOperand(op ), false); Out << ',';
writeOperand(I.getOperand(op+1), false); Out << " ]";
}
+ } else if (isa<GetResultInst>(I)) {
+ const StructType *STy = cast<StructType>(I.getOperand(0)->getType());
+ unsigned NumElems = STy->getNumElements();
+ Out << " {";
+ for (unsigned i = 0; i < NumElems; ++i) {
+ if (i)
+ Out << ",";
+ Out << " ";
+ printType(STy->getElementType(i));
+ }
+ Out << " }";
+ writeOperand(I.getOperand(0), false);
+ Out << ", " << cast<GetResultInst>(I).getIndex();
} else if (isa<ReturnInst>(I)) {
if (!Operand)
Out << " void";
OpenPOWER on IntegriCloud