libpayload: Add support for arm64 in libpayload

Basic support for arm64 is enabled in libpayload.
Features added:
1) mem* operations in assembly.
2) Basic exception handling and support for testing exceptions.
3) Caching support.

Tested with arm64-generic board compilation.

BUG=None
BRANCH=None
TEST=Compilation successful

Original-Change-Id: I4e86301f9c6383abc078e2b70071fb84bd6e4741
Original-Signed-off-by: Furquan Shaikh <furquan@google.com>
Original-Reviewed-on: https://chromium-review.googlesource.com/187067
Original-Tested-by: Furquan Shaikh <furquan@chromium.org>
Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Original-Commit-Queue: Furquan Shaikh <furquan@chromium.org>
(cherry picked from commit a70d13f3d225535843ab352290eab2e1ec7a9b4b)
Signed-off-by: Marc Jones <marc.jones@se-eng.com>

Change-Id: Ie3affe6a2bdd4fed3058de739d4c6aa573e5b251
Reviewed-on: http://review.coreboot.org/8063
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
Furquan Shaikh
2014-02-19 11:35:30 -08:00
committed by Marc Jones
parent 2445274347
commit 8c8c377584
34 changed files with 2715 additions and 3 deletions

View File

@@ -111,6 +111,11 @@ detect_special_flags() {
# CFLAGS="$CFLAGS -mcpu=cortex-a9"
;;
esac
case "$architecture" in
arm64-generic )
;;
esac
}
report_arch_toolchain() {
@@ -135,7 +140,7 @@ touch "$TMPFILE"
trap clean_up EXIT
# Architecture definition
SUPPORTED_ARCHITECTURE="x86 arm"
SUPPORTED_ARCHITECTURE="x86 arm arm64"
# ARM Architecture
TARCH_arm="arm"
@@ -143,6 +148,12 @@ TBFDARCH_arm="littlearm"
TCLIST_arm="armv7a armv7-a"
TWIDTH_arm="32"
# ARM64 Architecture
TARCH_arm64="arm64"
TBFDARCH_arm64="littleaarch64"
TCLIST_arm64="aarch64"
TWIDTH_arm64="64"
# X86 Architecture
TARCH_x86="i386"
TBFDARCH_x86="i386"