diff options
author | Devang Patel <dpatel@apple.com> | 2009-02-27 18:05:21 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2009-02-27 18:05:21 +0000 |
commit | 843cc34d8136ebd9a3d90f5f531fbeb4d014346b (patch) | |
tree | 0ea573bfd230ea8bb82a3938ca31218762ab6676 | |
parent | 9723bcf60fe6467fe4441ed136baf671323ec1ae (diff) | |
download | bcm5719-llvm-843cc34d8136ebd9a3d90f5f531fbeb4d014346b.tar.gz bcm5719-llvm-843cc34d8136ebd9a3d90f5f531fbeb4d014346b.zip |
It is possible that subprgoram definition is only encoding return value directly, instsad of an DIArray of all argument types.
llvm-svn: 65643
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfWriter.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfWriter.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfWriter.cpp index cab631524fc..5c4957aba11 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfWriter.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfWriter.cpp @@ -1888,8 +1888,12 @@ private: DIArray Args = SPTy.getTypeArray(); // Add Return Type. - if (!IsConstructor) - AddType(DW_Unit, SPDie, DIType(Args.getElement(0).getGV())); + if (!IsConstructor) { + if (Args.isNull()) + AddType(DW_Unit, SPDie, SPTy); + else + AddType(DW_Unit, SPDie, DIType(Args.getElement(0).getGV())); + } if (!SP.isDefinition()) { AddUInt(SPDie, DW_AT_declaration, DW_FORM_flag, 1); |