MC: Give a (lame) hard error if a .org directive would create an unreasonably
large object file (> 1GB).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113494 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/MC/MCAssembler.cpp b/lib/MC/MCAssembler.cpp
index f0e1d7f..8db1536 100644
--- a/lib/MC/MCAssembler.cpp
+++ b/lib/MC/MCAssembler.cpp
@@ -447,7 +447,7 @@
// FIXME: We need a way to communicate this error.
int64_t Offset = TargetLocation - FragmentOffset;
- if (Offset < 0)
+ if (Offset < 0 || Offset >= 0x40000000)
report_fatal_error("invalid .org offset '" + Twine(TargetLocation) +
"' (at offset '" + Twine(FragmentOffset) + "'");