arch-power: Add multi-mode support
authorSandipan Das <sandipan@linux.ibm.com>
Sat, 6 Feb 2021 12:09:51 +0000 (17:39 +0530)
committerSandipan Das <sandipan@linux.ibm.com>
Mon, 15 Feb 2021 08:32:38 +0000 (14:02 +0530)
commitae0458fc2ed2f5c3aa90c92c38d6053824b854d4
tree451f4dbbe43030bb1741b1e415507544fbab7ed0
parenta284c23127728ed9fa0f0c27ddb2ca1ac73094a4
arch-power: Add multi-mode support

This adds multi-mode support and allows the simulator to
read, interpret and execute 32bit and 64-bit, big and
little endian binaries in syscall emulation mode.

During process initialization, a minimal set of hardware
capabilities are also advertised by the simulator to show
support for 64-bit mode and little endian byte order.
This also adds some fixups specific to 64-bit ELF ABI v1
that readjust the entry point and symbol table due to the
use of function descriptors.

Change-Id: I124339eff7b70dbd14e50ff970340c88c13bd0ad
Signed-off-by: Sandipan Das <sandipan@linux.ibm.com>
src/arch/power/PowerSeWorkload.py
src/arch/power/linux/se_workload.cc
src/arch/power/process.cc
src/arch/power/registers.hh
src/base/loader/elf_object.cc
src/base/loader/object_file.cc
src/base/loader/object_file.hh