summaryrefslogtreecommitdiff
path: root/rts/linker/Elf.c
diff options
context:
space:
mode:
Diffstat (limited to 'rts/linker/Elf.c')
-rw-r--r--rts/linker/Elf.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/rts/linker/Elf.c b/rts/linker/Elf.c
index 8037d52b7c..d34b6e6e50 100644
--- a/rts/linker/Elf.c
+++ b/rts/linker/Elf.c
@@ -713,12 +713,13 @@ ocGetNames_ELF ( ObjectCode* oc )
#if defined(NEED_GOT) || RTS_LINKER_USE_MMAP
if (USE_CONTIGUOUS_MMAP || RtsFlags.MiscFlags.linkerAlwaysPic) {
/* The space for bss sections is already preallocated */
- ASSERT(oc->bssBegin != NULL);
+ CHECK(oc->bssBegin != NULL);
alloc = SECTION_NOMEM;
+ CHECK(oc->image != 0x0);
start =
oc->image + roundUpToAlign(oc->bssBegin - oc->image, align);
oc->bssBegin = (char*)start + size;
- ASSERT(oc->bssBegin <= oc->bssEnd);
+ CHECK(oc->bssBegin <= oc->bssEnd);
} else {
/* Use mmapForLinker to allocate .bss, otherwise the malloced
* address might be out of range for sections that are mmaped.
@@ -733,6 +734,7 @@ ocGetNames_ELF ( ObjectCode* oc )
mapped_offset = 0;
mapped_size = roundUpToPage(size);
}
+ CHECK(start != 0x0);
#else
alloc = SECTION_MALLOC;
start = stgCallocBytes(1, size, "ocGetNames_ELF(BSS)");