diff options
author | Simon Marlow <marlowsd@gmail.com> | 2016-05-21 18:36:49 +0200 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2016-05-21 19:10:59 +0200 |
commit | da3c1ebb8a57e81f12c5be192e477f79158a2398 (patch) | |
tree | 6fcc2d9a2f8f6706cceee043f256d6758c86c020 /rts/Linker.c | |
parent | cf1efc7f0f97f272645af93491ca890137df3704 (diff) | |
download | haskell-da3c1ebb8a57e81f12c5be192e477f79158a2398.tar.gz |
Enable checkProddableBlock on x86_64
We've been seeing some memory corruption after using the linker, and I
want to enable this to see if it catches anything.
Test Plan:
* validate
* modified the linker_unload test to remove the performGC calls to use
as a benchmark, saw no significant difference after this change.
Reviewers: bgamari, erikd, austin
Reviewed By: austin
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D2245
Diffstat (limited to 'rts/Linker.c')
-rw-r--r-- | rts/Linker.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/rts/Linker.c b/rts/Linker.c index 61b10d8e0e..e867d04781 100644 --- a/rts/Linker.c +++ b/rts/Linker.c @@ -4034,7 +4034,7 @@ ocGetNames_PEi386 ( ObjectCode* oc ) if (kind != SECTIONKIND_OTHER && end >= start) { addSection(§ions[i], kind, SECTION_NOMEM, start, sz, 0, 0, 0); - addProddableBlock(oc, start, end - start + 1); + addProddableBlock(oc, start, sz); } stgFree(secname); @@ -5756,7 +5756,7 @@ do_Elf_Rela_relocations ( ObjectCode* oc, char* ehdrC, IF_DEBUG(linker,debugBelch("Reloc: P = %p S = %p A = %p\n", (void*)P, (void*)S, (void*)A )); - /* checkProddableBlock ( oc, (void*)P ); */ + checkProddableBlock(oc, (void*)P, sizeof(Elf_Word)); #if defined(sparc_HOST_ARCH) || defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH) value = S + A; |