diff --git a/doc/index.html b/doc/index.html index b06fc46..8ff0a36 100644 --- a/doc/index.html +++ b/doc/index.html @@ -556,18 +556,19 @@ pre.pygments .tok-il { color: #666666 } /* Literal.Number.Integer.Long */
  • 4.1.8. BOOST_ARCH_MIPS
  • 4.1.9. BOOST_ARCH_PARISC
  • 4.1.10. BOOST_ARCH_PPC
  • -
  • 4.1.11. BOOST_ARCH_PTX
  • -
  • 4.1.12. BOOST_ARCH_PYRAMID
  • -
  • 4.1.13. BOOST_ARCH_RISCV
  • -
  • 4.1.14. BOOST_ARCH_RS6000
  • -
  • 4.1.15. BOOST_ARCH_SPARC
  • -
  • 4.1.16. BOOST_ARCH_SH
  • -
  • 4.1.17. BOOST_ARCH_SYS370
  • -
  • 4.1.18. BOOST_ARCH_SYS390
  • -
  • 4.1.19. BOOST_ARCH_X86
  • -
  • 4.1.20. BOOST_ARCH_Z
  • -
  • 4.1.21. BOOST_ARCH_X86_32
  • -
  • 4.1.22. BOOST_ARCH_X86_64
  • +
  • 4.1.11. BOOST_ARCH_PPC_64
  • +
  • 4.1.12. BOOST_ARCH_PTX
  • +
  • 4.1.13. BOOST_ARCH_PYRAMID
  • +
  • 4.1.14. BOOST_ARCH_RISCV
  • +
  • 4.1.15. BOOST_ARCH_RS6000
  • +
  • 4.1.16. BOOST_ARCH_SPARC
  • +
  • 4.1.17. BOOST_ARCH_SH
  • +
  • 4.1.18. BOOST_ARCH_SYS370
  • +
  • 4.1.19. BOOST_ARCH_SYS390
  • +
  • 4.1.20. BOOST_ARCH_X86
  • +
  • 4.1.21. BOOST_ARCH_Z
  • +
  • 4.1.22. BOOST_ARCH_X86_32
  • +
  • 4.1.23. BOOST_ARCH_X86_64
  • 4.2. BOOST_COMP compiler macros @@ -2153,6 +2154,10 @@ and "Y", "M", "D" for dates.

    detection

    +

    __powerpc64__

    +

    detection

    + +

    __POWERPC__

    detection

    @@ -2161,6 +2166,18 @@ and "Y", "M", "D" for dates.

    detection

    +

    __ppc64__

    +

    detection

    + + +

    __PPC__

    +

    detection

    + + +

    __PPC64__

    +

    detection

    + +

    _M_PPC

    detection

    @@ -2169,6 +2186,10 @@ and "Y", "M", "D" for dates.

    detection

    +

    _ARCH_PPC64

    +

    detection

    + +

    __PPCGECKO__

    detection

    @@ -2181,6 +2202,10 @@ and "Y", "M", "D" for dates.

    detection

    +

    __ppc

    +

    detection

    + +

    __ppc601__

    6.1.0

    @@ -2208,7 +2233,43 @@ and "Y", "M", "D" for dates.

    -

    4.1.11. BOOST_ARCH_PTX

    +

    4.1.11. BOOST_ARCH_PPC_64

    +
    +

    PowerPC 64 bit architecture.

    +
    + ++++ + + + + + + + + + + + + + + + + + + + + + + + + +
    SymbolVersion

    __powerpc64__

    detection

    __ppc64__

    detection

    __PPC64__

    detection

    _ARCH_PPC64

    detection

    +
    +
    +

    4.1.12. BOOST_ARCH_PTX

    PTX architecture.

    @@ -2236,7 +2297,7 @@ and "Y", "M", "D" for dates.

    -

    4.1.12. BOOST_ARCH_PYRAMID

    +

    4.1.13. BOOST_ARCH_PYRAMID

    Pyramid 9810 architecture.

    @@ -2260,7 +2321,7 @@ and "Y", "M", "D" for dates.

    -

    4.1.13. BOOST_ARCH_RISCV

    +

    4.1.14. BOOST_ARCH_RISCV

    RISC-V architecture.

    @@ -2284,7 +2345,7 @@ and "Y", "M", "D" for dates.

    -

    4.1.14. BOOST_ARCH_RS6000

    +

    4.1.15. BOOST_ARCH_RS6000

    RS/6000 architecture.

    @@ -2324,7 +2385,7 @@ and "Y", "M", "D" for dates.

    -

    4.1.15. BOOST_ARCH_SPARC

    +

    4.1.16. BOOST_ARCH_SPARC

    SPARC architecture.

    @@ -2368,7 +2429,7 @@ and "Y", "M", "D" for dates.

    -

    4.1.16. BOOST_ARCH_SH

    +

    4.1.17. BOOST_ARCH_SH

    SuperH architecture: If available versions [1-5] are specifically detected.

    @@ -2417,7 +2478,7 @@ If available versions [1-5] are specifically detected.

    -

    4.1.17. BOOST_ARCH_SYS370

    +

    4.1.18. BOOST_ARCH_SYS370

    System/370 architecture.

    @@ -2445,7 +2506,7 @@ If available versions [1-5] are specifically detected.

    -

    4.1.18. BOOST_ARCH_SYS390

    +

    4.1.19. BOOST_ARCH_SYS390

    System/390 architecture.

    @@ -2473,7 +2534,7 @@ If available versions [1-5] are specifically detected.

    -

    4.1.19. BOOST_ARCH_X86

    +

    4.1.20. BOOST_ARCH_X86

    Intel x86 architecture. This is a category to indicate that either BOOST_ARCH_X86_32 or @@ -2481,7 +2542,7 @@ a category to indicate that either BOOST_ARCH_X86_32 or

    -

    4.1.20. BOOST_ARCH_Z

    +

    4.1.21. BOOST_ARCH_Z

    z/Architecture architecture.

    @@ -2505,7 +2566,7 @@ a category to indicate that either BOOST_ARCH_X86_32 or
    -

    4.1.21. BOOST_ARCH_X86_32

    +

    4.1.22. BOOST_ARCH_X86_32

    Intel x86 architecture: If available versions [3-6] are specifically detected.

    @@ -2594,7 +2655,7 @@ If available versions [3-6] are specifically detected.

    -

    4.1.22. BOOST_ARCH_X86_64

    +

    4.1.23. BOOST_ARCH_X86_64

    X86-64 architecture.

    diff --git a/include/boost/predef/architecture/ppc.h b/include/boost/predef/architecture/ppc.h index 55ba5a1..73d99f3 100644 --- a/include/boost/predef/architecture/ppc.h +++ b/include/boost/predef/architecture/ppc.h @@ -22,13 +22,19 @@ http://en.wikipedia.org/wiki/PowerPC[PowerPC] architecture. | `+__powerpc+` | {predef_detection} | `+__powerpc__+` | {predef_detection} +| `+__powerpc64__+` | {predef_detection} | `+__POWERPC__+` | {predef_detection} | `+__ppc__+` | {predef_detection} +| `+__ppc64__+` | {predef_detection} +| `+__PPC__+` | {predef_detection} +| `+__PPC64__+` | {predef_detection} | `+_M_PPC+` | {predef_detection} | `+_ARCH_PPC+` | {predef_detection} +| `+_ARCH_PPC64+` | {predef_detection} | `+__PPCGECKO__+` | {predef_detection} | `+__PPCBROADWAY__+` | {predef_detection} | `+_XENON+` | {predef_detection} +| `+__ppc+` | {predef_detection} | `+__ppc601__+` | 6.1.0 | `+_ARCH_601+` | 6.1.0 @@ -41,11 +47,13 @@ http://en.wikipedia.org/wiki/PowerPC[PowerPC] architecture. #define BOOST_ARCH_PPC BOOST_VERSION_NUMBER_NOT_AVAILABLE -#if defined(__powerpc) || defined(__powerpc__) || \ - defined(__POWERPC__) || defined(__ppc__) || \ - defined(_M_PPC) || defined(_ARCH_PPC) || \ +#if defined(__powerpc) || defined(__powerpc__) || defined(__powerpc64__) || \ + defined(__POWERPC__) || defined(__ppc__) || defined(__ppc64__) || \ + defined(__PPC__) || defined(__PPC64__) || \ + defined(_M_PPC) || defined(_ARCH_PPC) || defined(_ARCH_PPC64) || \ defined(__PPCGECKO__) || defined(__PPCBROADWAY__) || \ - defined(_XENON) + defined(_XENON) || \ + defined(__ppc) # undef BOOST_ARCH_PPC # if !defined (BOOST_ARCH_PPC) && (defined(__ppc601__) || defined(_ARCH_601)) # define BOOST_ARCH_PPC BOOST_VERSION_NUMBER(6,1,0) @@ -65,14 +73,52 @@ http://en.wikipedia.org/wiki/PowerPC[PowerPC] architecture. # define BOOST_ARCH_PPC_AVAILABLE #endif -#if BOOST_ARCH_PPC +#define BOOST_ARCH_PPC_NAME "PowerPC" + + +/* tag::reference[] += `BOOST_ARCH_PPC_64` + +http://en.wikipedia.org/wiki/PowerPC[PowerPC] 64 bit architecture. + +[options="header"] +|=== +| {predef_symbol} | {predef_version} + +| `+__powerpc64__+` | {predef_detection} +| `+__ppc64__+` | {predef_detection} +| `+__PPC64__+` | {predef_detection} +| `+_ARCH_PPC64+` | {predef_detection} +|=== +*/ // end::reference[] + +#define BOOST_ARCH_PPC_64 BOOST_VERSION_NUMBER_NOT_AVAILABLE + +#if defined(__powerpc64__) || defined(__ppc64__) || defined(__PPC64__) || \ + defined(_ARCH_PPC64) +# undef BOOST_ARCH_PPC_64 +# define BOOST_ARCH_PPC_64 BOOST_VERSION_NUMBER_AVAILABLE +#endif + +#if BOOST_ARCH_PPC_64 +# define BOOST_ARCH_PPC_64_AVAILABLE +#endif + +#define BOOST_ARCH_PPC_64_NAME "PowerPC64" + + +#if BOOST_ARCH_PPC_64 +# undef BOOST_ARCH_WORD_BITS_64 +# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_AVAILABLE +#else # undef BOOST_ARCH_WORD_BITS_32 # define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_AVAILABLE #endif -#define BOOST_ARCH_PPC_NAME "PowerPC" - #endif #include BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PPC,BOOST_ARCH_PPC_NAME) + +#include +BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PPC_64,BOOST_ARCH_PPC_64_NAME) diff --git a/include/boost/predef/other/wordsize.h b/include/boost/predef/other/wordsize.h index 165e786..ce3016f 100644 --- a/include/boost/predef/other/wordsize.h +++ b/include/boost/predef/other/wordsize.h @@ -1,5 +1,5 @@ /* -Copyright Rene Ferdinand Rivera Morell 2020 +Copyright Rene Ferdinand Rivera Morell 2020-2021 Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) @@ -31,34 +31,38 @@ the `wordsize.h` header will also include all the architecture headers. */ // end::reference[] -#ifndef BOOST_ARCH_WORD_BITS_16 -# define BOOST_ARCH_WORD_BITS_16 BOOST_VERSION_NUMBER_NOT_AVAILABLE -#else -# define BOOST_ARCH_WORD_BITS 16 +#if !defined(BOOST_ARCH_WORD_BITS_64) +# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_NOT_AVAILABLE +#elif !defined(BOOST_ARCH_WORD_BITS) +# define BOOST_ARCH_WORD_BITS 64 #endif -#ifndef BOOST_ARCH_WORD_BITS_32 -# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_NOT_AVAILABLE -#else -# define BOOST_ARCH_WORD_BITS 32 +#if !defined(BOOST_ARCH_WORD_BITS_32) +# define BOOST_ARCH_WORD_BITS_32 BOOST_VERSION_NUMBER_NOT_AVAILABLE +#elif !defined(BOOST_ARCH_WORD_BITS) +# define BOOST_ARCH_WORD_BITS 32 #endif -#ifndef BOOST_ARCH_WORD_BITS_64 -# define BOOST_ARCH_WORD_BITS_64 BOOST_VERSION_NUMBER_NOT_AVAILABLE -#else -# define BOOST_ARCH_WORD_BITS 64 +#if !defined(BOOST_ARCH_WORD_BITS_16) +# define BOOST_ARCH_WORD_BITS_16 BOOST_VERSION_NUMBER_NOT_AVAILABLE +#elif !defined(BOOST_ARCH_WORD_BITS) +# define BOOST_ARCH_WORD_BITS 16 #endif -#ifndef BOOST_ARCH_WORD_BITS -# define BOOST_ARCH_WORD_BITS 0 +#if !defined(BOOST_ARCH_WORD_BITS) +# define BOOST_ARCH_WORD_BITS 0 #endif +#define BOOST_ARCH_WORD_BITS_NAME "Word Bits" #define BOOST_ARCH_WORD_BITS_16_NAME "16-bit Word Size" #define BOOST_ARCH_WORD_BITS_32_NAME "32-bit Word Size" #define BOOST_ARCH_WORD_BITS_64_NAME "64-bit Word Size" #endif +#include +BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_WORD_BITS,BOOST_ARCH_WORD_BITS_NAME) + #include BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_WORD_BITS_16,BOOST_ARCH_WORD_BITS_16_NAME)