svn commit: r509720 - in head/lang/angelscript: . files

Jan Beich jbeich at FreeBSD.org
Sat Aug 24 13:08:42 UTC 2019


Piotr Kubaj <pkubaj at FreeBSD.org> writes:

> Added: head/lang/angelscript/files/patch-as_config.h
> ==============================================================================
>
> --- /dev/null	00:00:00 1970	(empty, because file is newly added)
> +++ head/lang/angelscript/files/patch-as_config.h	Sat Aug 24 12:38:55 2019	(r509720)
> @@ -0,0 +1,12 @@
> +--- ../../source/as_config.h.orig	2019-07-28 15:58:25.283690000 +0200
> ++++ ../../source/as_config.h	2019-07-28 16:08:34.592212000 +0200
> +@@ -953,6 +953,9 @@
> + 			#define COMPLEX_RETURN_MASK (asOBJ_APP_CLASS_DESTRUCTOR | asOBJ_APP_CLASS_COPY_CONSTRUCTOR | asOBJ_APP_ARRAY)
> + 			#define THISCALL_PASS_OBJECT_POINTER_ON_THE_STACK
> + 			#define AS_X86
> ++		#elif defined(__powerpc64__)
> ++			#define AS_BIG_ENDIAN
> ++			#define AS_MAX_PORTABILITY

__powerpc64__ includes both big- and little- endian variants.
AS_BIG_ENDIAN is already defined conditionally in as_config.h:

  #if !defined(AS_BIG_ENDIAN) && \
          defined(__BYTE_ORDER) && __BYTE_ORDER == __BIG_ENDIAN || \
          defined(__BIG_ENDIAN__) || \
          defined(__ARMEB__) || \
          defined(__THUMBEB__) || \
          defined(__AARCH64EB__) || \
          defined(_MIBSEB) || defined(__MIBSEB) || defined(__MIBSEB__)
                  #define AS_BIG_ENDIAN
  #endif

$ clang -target powerpc64le-unknown-freebsd12.0 -dM -E -</dev/null | grep -i -e __p.\*pc -e endian
#define _LITTLE_ENDIAN 1
#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
#define __LITTLE_ENDIAN__ 1
#define __ORDER_BIG_ENDIAN__ 4321
#define __ORDER_LITTLE_ENDIAN__ 1234
#define __ORDER_PDP_ENDIAN__ 3412
#define __POWERPC__ 1
#define __PPC64__ 1
#define __PPC__ 1
#define __powerpc64__ 1
#define __powerpc__ 1
#define __ppc64__ 1
#define __ppc__ 1

$ clang -target powerpc64-unknown-freebsd12.0 -dM -E -</dev/null | fgrep -i endian
#define _BIG_ENDIAN 1
#define __BIG_ENDIAN__ 1
#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
#define __ORDER_BIG_ENDIAN__ 4321
#define __ORDER_LITTLE_ENDIAN__ 1234
#define __ORDER_PDP_ENDIAN__ 3412

$ ssh ref12-ppc64.freebsd.org
$ gcc8 -dM -E -</dev/null | fgrep -i endian
#define __ORDER_LITTLE_ENDIAN__ 1234
#define __BIG_ENDIAN__ 1
#define __FLOAT_WORD_ORDER__ __ORDER_BIG_ENDIAN__
#define __ORDER_PDP_ENDIAN__ 3412
#define _BIG_ENDIAN 1
#define __ORDER_BIG_ENDIAN__ 4321
#define __VEC_ELEMENT_REG_ORDER__ __ORDER_BIG_ENDIAN__
#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__


More information about the svn-ports-head mailing list