diff options
Diffstat (limited to 'src/arch/arm')
-rw-r--r-- | src/arch/arm/freebsd/system.cc | 2 | ||||
-rw-r--r-- | src/arch/arm/linux/system.cc | 2 | ||||
-rw-r--r-- | src/arch/arm/process.cc | 6 |
3 files changed, 4 insertions, 6 deletions
diff --git a/src/arch/arm/freebsd/system.cc b/src/arch/arm/freebsd/system.cc index 6e544a70e..764f036b4 100644 --- a/src/arch/arm/freebsd/system.cc +++ b/src/arch/arm/freebsd/system.cc @@ -132,7 +132,7 @@ FreebsdArmSystem::initState() if (ra) bootReleaseAddr = ra & ~ULL(0x7F); - dtb_file->setTextBase(params()->atags_addr + loadAddrOffset); + dtb_file->setLoadOffset(params()->atags_addr + loadAddrOffset); dtb_file->loadSegments(physProxy); delete dtb_file; diff --git a/src/arch/arm/linux/system.cc b/src/arch/arm/linux/system.cc index f03a5c6cb..a0869b46a 100644 --- a/src/arch/arm/linux/system.cc +++ b/src/arch/arm/linux/system.cc @@ -151,7 +151,7 @@ LinuxArmSystem::initState() "to DTB file: %s\n", params()->dtb_filename); } - dtb_file->setTextBase(params()->atags_addr + loadAddrOffset); + dtb_file->setLoadOffset(params()->atags_addr + loadAddrOffset); dtb_file->loadSegments(physProxy); delete dtb_file; } else { diff --git a/src/arch/arm/process.cc b/src/arch/arm/process.cc index 1a1d4a2a0..f98572690 100644 --- a/src/arch/arm/process.cc +++ b/src/arch/arm/process.cc @@ -75,8 +75,7 @@ ArmProcess32::ArmProcess32(ProcessParams *params, ObjectFile *objFile, ObjectFile::Arch _arch) : ArmProcess(params, objFile, _arch) { - Addr brk_point = roundUp(objFile->dataBase() + objFile->dataSize() + - objFile->bssSize(), PageBytes); + Addr brk_point = roundUp(objFile->maxSegmentAddr(), PageBytes); Addr stack_base = 0xbf000000L; Addr max_stack_size = 8 * 1024 * 1024; Addr next_thread_stack_base = stack_base - max_stack_size; @@ -90,8 +89,7 @@ ArmProcess64::ArmProcess64(ProcessParams *params, ObjectFile *objFile, ObjectFile::Arch _arch) : ArmProcess(params, objFile, _arch) { - Addr brk_point = roundUp(objFile->dataBase() + objFile->dataSize() + - objFile->bssSize(), PageBytes); + Addr brk_point = roundUp(objFile->maxSegmentAddr(), PageBytes); Addr stack_base = 0x7fffff0000L; Addr max_stack_size = 8 * 1024 * 1024; Addr next_thread_stack_base = stack_base - max_stack_size; |