summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/projects/libunwind/src/DwarfParser.hpp
diff options
context:
space:
mode:
authoremaste <emaste@FreeBSD.org>2016-01-04 21:41:02 +0000
committeremaste <emaste@FreeBSD.org>2016-01-04 21:41:02 +0000
commit91c4e15931d56434d3b8f262a3ebf2e91927838e (patch)
tree13db1e452d72d87c8332bed56b285d7a44037976 /contrib/llvm/projects/libunwind/src/DwarfParser.hpp
parent0375989a078c9312a43b492e178a65aa477dcab3 (diff)
downloadFreeBSD-src-91c4e15931d56434d3b8f262a3ebf2e91927838e.zip
FreeBSD-src-91c4e15931d56434d3b8f262a3ebf2e91927838e.tar.gz
Merge LLVM libunwind revision 256779
Diffstat (limited to 'contrib/llvm/projects/libunwind/src/DwarfParser.hpp')
-rw-r--r--contrib/llvm/projects/libunwind/src/DwarfParser.hpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/contrib/llvm/projects/libunwind/src/DwarfParser.hpp b/contrib/llvm/projects/libunwind/src/DwarfParser.hpp
index 26993c4e..a19f051 100644
--- a/contrib/llvm/projects/libunwind/src/DwarfParser.hpp
+++ b/contrib/llvm/projects/libunwind/src/DwarfParser.hpp
@@ -380,7 +380,9 @@ bool CFI_Parser<A>::parseInstructions(A &addressSpace, pint_t instructions,
uint64_t length;
uint8_t opcode = addressSpace.get8(p);
uint8_t operand;
+#if !defined(_LIBUNWIND_NO_HEAP)
PrologInfoStackEntry *entry;
+#endif
++p;
switch (opcode) {
case DW_CFA_nop:
@@ -492,6 +494,7 @@ bool CFI_Parser<A>::parseInstructions(A &addressSpace, pint_t instructions,
fprintf(stderr, "DW_CFA_register(reg=%" PRIu64 ", reg2=%" PRIu64 ")\n",
reg, reg2);
break;
+#if !defined(_LIBUNWIND_NO_HEAP)
case DW_CFA_remember_state:
// avoid operator new, because that would be an upward dependency
entry = (PrologInfoStackEntry *)malloc(sizeof(PrologInfoStackEntry));
@@ -517,6 +520,7 @@ bool CFI_Parser<A>::parseInstructions(A &addressSpace, pint_t instructions,
if (logDwarf)
fprintf(stderr, "DW_CFA_restore_state\n");
break;
+#endif
case DW_CFA_def_cfa:
reg = addressSpace.getULEB128(p, instructionsEnd);
offset = (int64_t)addressSpace.getULEB128(p, instructionsEnd);
OpenPOWER on IntegriCloud