ARM64: Initial changes so we can compile GCC toolchain
Signed-off-by: Jaroslaw Pelczar <[email protected]> Change-Id: I0859d0619d601efd003472e2846d2f980ee2e457 Reviewed-on: https://review.haiku-os.org/c/haiku/+/1799 Reviewed-by: waddlesplash <[email protected]>
This commit is contained in:
committed by
waddlesplash
parent
abdd9ab439
commit
1f52c921e2
@@ -267,7 +267,7 @@ standard_gcc_settings()
|
|||||||
# determine architecture from machine triple
|
# determine architecture from machine triple
|
||||||
case $gccMachine in
|
case $gccMachine in
|
||||||
arm-*) targetCpu=arm;;
|
arm-*) targetCpu=arm;;
|
||||||
arm64-*) targetCpu=arm64;;
|
aarch64-*) targetCpu=arm64;;
|
||||||
i?86-*) targetCpu=x86;;
|
i?86-*) targetCpu=x86;;
|
||||||
m68k-*) targetCpu=m68k;;
|
m68k-*) targetCpu=m68k;;
|
||||||
powerpc-*) targetCpu=ppc;;
|
powerpc-*) targetCpu=ppc;;
|
||||||
@@ -701,6 +701,7 @@ while [ $# -gt 0 ] ; do
|
|||||||
ppc) targetMachine=powerpc-apple-haiku;;
|
ppc) targetMachine=powerpc-apple-haiku;;
|
||||||
m68k) targetMachine=m68k-unknown-haiku;;
|
m68k) targetMachine=m68k-unknown-haiku;;
|
||||||
arm) targetMachine=arm-unknown-haiku;;
|
arm) targetMachine=arm-unknown-haiku;;
|
||||||
|
arm64) targetMachine=aarch64-unknown-haiku;;
|
||||||
riscv64) targetMachine=riscv64-unknown-haiku;;
|
riscv64) targetMachine=riscv64-unknown-haiku;;
|
||||||
sparc) targetMachine=sparc64-unknown-haiku;;
|
sparc) targetMachine=sparc64-unknown-haiku;;
|
||||||
*)
|
*)
|
||||||
@@ -760,7 +761,7 @@ while [ $# -gt 0 ] ; do
|
|||||||
x86_64) targetMachine=x86_64-unknown-haiku;;
|
x86_64) targetMachine=x86_64-unknown-haiku;;
|
||||||
ppc) targetMachine=powerpc-apple-haiku;;
|
ppc) targetMachine=powerpc-apple-haiku;;
|
||||||
arm) targetMachine=arm-unknown-haiku;;
|
arm) targetMachine=arm-unknown-haiku;;
|
||||||
arm64) targetMachine=arm64-unknown-haiku;;
|
arm64) targetMachine=aarch64-unknown-haiku;;
|
||||||
riscv64) targetMachine=riscv64-unknown-haiku;;
|
riscv64) targetMachine=riscv64-unknown-haiku;;
|
||||||
sparc) targetMachine=sparc64-unknown-haiku;;
|
sparc) targetMachine=sparc64-unknown-haiku;;
|
||||||
*)
|
*)
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
# define __HAIKU_ARCH_ABI "armeb"
|
# define __HAIKU_ARCH_ABI "armeb"
|
||||||
# define __HAIKU_ARCH_ARM 1
|
# define __HAIKU_ARCH_ARM 1
|
||||||
# define __HAIKU_BIG_ENDIAN 1
|
# define __HAIKU_BIG_ENDIAN 1
|
||||||
#elif defined(__arm64__)
|
#elif defined(__aarch64__) || defined(__arm64__)
|
||||||
# define __HAIKU_ARCH arm64
|
# define __HAIKU_ARCH arm64
|
||||||
# define __HAIKU_ARCH_ABI "arm64"
|
# define __HAIKU_ARCH_ABI "arm64"
|
||||||
# define __HAIKU_ARCH_ARM64 1
|
# define __HAIKU_ARCH_ARM64 1
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2019 Jaroslaw Pelczar <[email protected]>
|
||||||
|
* Distributed under the terms of the MIT License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _ARCH_SETJMP_H_
|
||||||
|
#define _ARCH_SETJMP_H_
|
||||||
|
|
||||||
|
|
||||||
|
#define _SETJMP_BUF_SZ (32)
|
||||||
|
typedef __int128_t __jmp_buf[_SETJMP_BUF_SZ];
|
||||||
|
|
||||||
|
#endif /* _ARCH_SETJMP_H_ */
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
* Architecture-specific structure passed to signal handlers
|
* Architecture-specific structure passed to signal handlers
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(__arm64__)
|
#if defined(__aarch64__)
|
||||||
struct vregs
|
struct vregs
|
||||||
{
|
{
|
||||||
ulong x[30];
|
ulong x[30];
|
||||||
@@ -23,7 +23,7 @@ struct vregs
|
|||||||
u_int fpsr;
|
u_int fpsr;
|
||||||
u_int fpcr;
|
u_int fpcr;
|
||||||
};
|
};
|
||||||
#endif /* defined(__arm64__) */
|
#endif /* defined(__aarch64__) */
|
||||||
|
|
||||||
|
|
||||||
#endif /* _ARCH_SIGNAL_H_ */
|
#endif /* _ARCH_SIGNAL_H_ */
|
||||||
|
|||||||
@@ -7,6 +7,8 @@
|
|||||||
# include <arch/x86_64/fenv.h>
|
# include <arch/x86_64/fenv.h>
|
||||||
#elif defined(__arm__)
|
#elif defined(__arm__)
|
||||||
# include <arch/arm/fenv.h>
|
# include <arch/arm/fenv.h>
|
||||||
|
#elif defined(__aarch64__)
|
||||||
|
# include <arch/arm64/fenv.h>
|
||||||
#elif defined(__POWERPC__)
|
#elif defined(__POWERPC__)
|
||||||
# include <arch/ppc/fenv.h>
|
# include <arch/ppc/fenv.h>
|
||||||
#else
|
#else
|
||||||
|
|||||||
Reference in New Issue
Block a user