From bf82e99691c890d00de0d411326bc4a592e15eb0 Mon Sep 17 00:00:00 2001 From: Gerolf Hoflehner Date: Mon, 12 Feb 2018 07:19:05 +0000 Subject: [MC] Issue error message when data region is not terminated llvm-svn: 324868 --- llvm/lib/MC/MachObjectWriter.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'llvm/lib/MC/MachObjectWriter.cpp') diff --git a/llvm/lib/MC/MachObjectWriter.cpp b/llvm/lib/MC/MachObjectWriter.cpp index c7eaa76ace3..25f451cd4fa 100644 --- a/llvm/lib/MC/MachObjectWriter.cpp +++ b/llvm/lib/MC/MachObjectWriter.cpp @@ -945,7 +945,13 @@ void MachObjectWriter::writeObject(MCAssembler &Asm, it != ie; ++it) { const DataRegionData *Data = &(*it); uint64_t Start = getSymbolAddress(*Data->Start, Layout); - uint64_t End = getSymbolAddress(*Data->End, Layout); + uint64_t End; + if (Data->End) + End = getSymbolAddress(*Data->End, Layout); + else + report_fatal_error("Data region not terminated"); + + DEBUG(dbgs() << "data in code region-- kind: " << Data->Kind << " start: " << Start << "(" << Data->Start->getName() << ")" << " end: " << End << "(" << Data->End->getName() << ")" -- cgit v1.2.3