changeset 635a7cdec721 in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=635a7cdec721
description:
        loader: initialize all memory in the ObjectFile objects.

        Some bare metal build flows seem to build binaries that we aren't 
necessarily
        expecting. Initialize everything to 0, so we don't make any assumptions 
about
        what is or isn't in the binary.

diffstat:

 src/base/loader/elf_object.cc  |  1 +
 src/base/loader/object_file.cc |  2 +-
 2 files changed, 2 insertions(+), 1 deletions(-)

diffs (23 lines):

diff -r 1d0f46a90f91 -r 635a7cdec721 src/base/loader/elf_object.cc
--- a/src/base/loader/elf_object.cc     Fri Sep 07 14:20:52 2012 -0500
+++ b/src/base/loader/elf_object.cc     Fri Sep 07 14:20:52 2012 -0500
@@ -248,6 +248,7 @@
 
     // initialize segment sizes to 0 in case they're not present
     text.size = data.size = bss.size = 0;
+    text.baseAddr = data.baseAddr = bss.baseAddr = 0;
 
     int secIdx = 1;
     Elf_Scn *section;
diff -r 1d0f46a90f91 -r 635a7cdec721 src/base/loader/object_file.cc
--- a/src/base/loader/object_file.cc    Fri Sep 07 14:20:52 2012 -0500
+++ b/src/base/loader/object_file.cc    Fri Sep 07 14:20:52 2012 -0500
@@ -53,7 +53,7 @@
                        size_t _len, uint8_t *_data,
                        Arch _arch, OpSys _opSys)
     : filename(_filename), descriptor(_fd), fileData(_data), len(_len),
-      arch(_arch), opSys(_opSys)
+      arch(_arch), opSys(_opSys), globalPtr(0)
 {
 }
 
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to