OLD | NEW |
1 //===-- llvm/CodeGen/DwarfDebug.cpp - Dwarf Debug Framework ---------------===// | 1 //===-- llvm/CodeGen/DwarfDebug.cpp - Dwarf Debug Framework ---------------===// |
2 // | 2 // |
3 // The LLVM Compiler Infrastructure | 3 // The LLVM Compiler Infrastructure |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 // | 9 // |
10 // This file contains support for writing dwarf debug info into asm files. | 10 // This file contains support for writing dwarf debug info into asm files. |
(...skipping 1249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1260 TheCU.addRange(RangeSpan(FunctionBeginSym, FunctionEndSym)); | 1260 TheCU.addRange(RangeSpan(FunctionBeginSym, FunctionEndSym)); |
1261 | 1261 |
1262 // Under -gmlt, skip building the subprogram if there are no inlined | 1262 // Under -gmlt, skip building the subprogram if there are no inlined |
1263 // subroutines inside it. | 1263 // subroutines inside it. |
1264 if (TheCU.getCUNode().getEmissionKind() == DIBuilder::LineTablesOnly && | 1264 if (TheCU.getCUNode().getEmissionKind() == DIBuilder::LineTablesOnly && |
1265 LScopes.getAbstractScopesList().empty() && !IsDarwin) { | 1265 LScopes.getAbstractScopesList().empty() && !IsDarwin) { |
1266 assert(InfoHolder.getScopeVariables().empty()); | 1266 assert(InfoHolder.getScopeVariables().empty()); |
1267 assert(DbgValues.empty()); | 1267 assert(DbgValues.empty()); |
1268 // FIXME: This wouldn't be true in LTO with a -g (with inlining) CU followed | 1268 // FIXME: This wouldn't be true in LTO with a -g (with inlining) CU followed |
1269 // by a -gmlt CU. Add a test and remove this assertion. | 1269 // by a -gmlt CU. Add a test and remove this assertion. |
1270 assert(AbstractVariables.empty()); | 1270 // @LOCALMOD-BEGIN -- The PNaCl IRT build does bitcode linking |
| 1271 // and mixes -g w/ -gmlt. |
| 1272 // https://code.google.com/p/nativeclient/issues/detail?id=4026 |
| 1273 // assert(AbstractVariables.empty()); |
| 1274 // @LOCALMOD-END |
1271 LabelsBeforeInsn.clear(); | 1275 LabelsBeforeInsn.clear(); |
1272 LabelsAfterInsn.clear(); | 1276 LabelsAfterInsn.clear(); |
1273 PrevLabel = nullptr; | 1277 PrevLabel = nullptr; |
1274 CurFn = nullptr; | 1278 CurFn = nullptr; |
1275 return; | 1279 return; |
1276 } | 1280 } |
1277 | 1281 |
1278 #ifndef NDEBUG | 1282 #ifndef NDEBUG |
1279 size_t NumAbstractScopes = LScopes.getAbstractScopesList().size(); | 1283 size_t NumAbstractScopes = LScopes.getAbstractScopesList().size(); |
1280 #endif | 1284 #endif |
(...skipping 929 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2210 AccelNamespace.AddName(Name, InfoHolder.getStringPool().getSymbol(*Asm, Name), | 2214 AccelNamespace.AddName(Name, InfoHolder.getStringPool().getSymbol(*Asm, Name), |
2211 &Die); | 2215 &Die); |
2212 } | 2216 } |
2213 | 2217 |
2214 void DwarfDebug::addAccelType(StringRef Name, const DIE &Die, char Flags) { | 2218 void DwarfDebug::addAccelType(StringRef Name, const DIE &Die, char Flags) { |
2215 if (!useDwarfAccelTables()) | 2219 if (!useDwarfAccelTables()) |
2216 return; | 2220 return; |
2217 AccelTypes.AddName(Name, InfoHolder.getStringPool().getSymbol(*Asm, Name), | 2221 AccelTypes.AddName(Name, InfoHolder.getStringPool().getSymbol(*Asm, Name), |
2218 &Die); | 2222 &Die); |
2219 } | 2223 } |
OLD | NEW |