From: Carlos J. Puga Medina Date: Fri, 3 Jul 2015 18:55:54 +0000 (+0300) Subject: Support FreeBSD/aarch64 X-Git-Tag: gc7_6_0~181 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2282b2013a5a06b8e28225076f4b263d735676f8;p=gc Support FreeBSD/aarch64 * include/private/gcconfig.h (NOSYS): Do not define if FREEBSD and __aarch64__. * include/private/gcconfig.h (AARCH64, mach_type_known): Define if FREEBSD and __aarch64__. * include/private/gcconfig.h (ALIGNMENT, OS_TYPE, DYNAMIC_LOADING, HEURISTIC2, SEARCH_FOR_DATA_START): Likewise. --- diff --git a/include/private/gcconfig.h b/include/private/gcconfig.h index 18bfc4c2..c359d0a7 100644 --- a/include/private/gcconfig.h +++ b/include/private/gcconfig.h @@ -98,7 +98,7 @@ # endif # if defined(__aarch64__) # define AARCH64 -# if !defined(LINUX) && !defined(DARWIN) +# if !defined(LINUX) && !defined(DARWIN) && !defined(FREEBSD) # define NOSYS # define mach_type_known # endif @@ -409,6 +409,10 @@ # define I386 # define mach_type_known # endif +# if defined(FREEBSD) && defined(__aarch64__) +# define AARCH64 +# define mach_type_known +# endif # if defined(FREEBSD) && (defined(__amd64__) || defined(__x86_64__)) # define X86_64 # define mach_type_known @@ -2064,6 +2068,16 @@ # define NO_DYLD_BIND_FULLY_IMAGE # endif # endif +# ifdef FREEBSD +# define ALIGNMENT 8 +# define OS_TYPE "FREEBSD" +# ifdef __ELF__ +# define DYNAMIC_LOADING +# endif +# define HEURISTIC2 + extern char etext[]; +# define SEARCH_FOR_DATA_START +# endif # ifdef NOSYS /* __data_start is usually defined in the target linker script. */ extern int __data_start[];