Update from upstream Hash Predef.

This commit is contained in:
Rene Rivera
2021-02-13 10:21:16 -06:00
parent cfbda6e0cc
commit c9ee4eb329
3 changed files with 157 additions and 46 deletions

View File

@ -556,18 +556,19 @@ pre.pygments .tok-il { color: #666666 } /* Literal.Number.Integer.Long */
<li><a href="#_boost_arch_mips">4.1.8. <code>BOOST_ARCH_MIPS</code></a></li>
<li><a href="#_boost_arch_parisc">4.1.9. <code>BOOST_ARCH_PARISC</code></a></li>
<li><a href="#_boost_arch_ppc">4.1.10. <code>BOOST_ARCH_PPC</code></a></li>
<li><a href="#_boost_arch_ptx">4.1.11. <code>BOOST_ARCH_PTX</code></a></li>
<li><a href="#_boost_arch_pyramid">4.1.12. <code>BOOST_ARCH_PYRAMID</code></a></li>
<li><a href="#_boost_arch_riscv">4.1.13. <code>BOOST_ARCH_RISCV</code></a></li>
<li><a href="#_boost_arch_rs6000">4.1.14. <code>BOOST_ARCH_RS6000</code></a></li>
<li><a href="#_boost_arch_sparc">4.1.15. <code>BOOST_ARCH_SPARC</code></a></li>
<li><a href="#_boost_arch_sh">4.1.16. <code>BOOST_ARCH_SH</code></a></li>
<li><a href="#_boost_arch_sys370">4.1.17. <code>BOOST_ARCH_SYS370</code></a></li>
<li><a href="#_boost_arch_sys390">4.1.18. <code>BOOST_ARCH_SYS390</code></a></li>
<li><a href="#_boost_arch_x86">4.1.19. <code>BOOST_ARCH_X86</code></a></li>
<li><a href="#_boost_arch_z">4.1.20. <code>BOOST_ARCH_Z</code></a></li>
<li><a href="#_boost_arch_x86_32">4.1.21. <code>BOOST_ARCH_X86_32</code></a></li>
<li><a href="#_boost_arch_x86_64">4.1.22. <code>BOOST_ARCH_X86_64</code></a></li>
<li><a href="#_boost_arch_ppc_64">4.1.11. <code>BOOST_ARCH_PPC_64</code></a></li>
<li><a href="#_boost_arch_ptx">4.1.12. <code>BOOST_ARCH_PTX</code></a></li>
<li><a href="#_boost_arch_pyramid">4.1.13. <code>BOOST_ARCH_PYRAMID</code></a></li>
<li><a href="#_boost_arch_riscv">4.1.14. <code>BOOST_ARCH_RISCV</code></a></li>
<li><a href="#_boost_arch_rs6000">4.1.15. <code>BOOST_ARCH_RS6000</code></a></li>
<li><a href="#_boost_arch_sparc">4.1.16. <code>BOOST_ARCH_SPARC</code></a></li>
<li><a href="#_boost_arch_sh">4.1.17. <code>BOOST_ARCH_SH</code></a></li>
<li><a href="#_boost_arch_sys370">4.1.18. <code>BOOST_ARCH_SYS370</code></a></li>
<li><a href="#_boost_arch_sys390">4.1.19. <code>BOOST_ARCH_SYS390</code></a></li>
<li><a href="#_boost_arch_x86">4.1.20. <code>BOOST_ARCH_X86</code></a></li>
<li><a href="#_boost_arch_z">4.1.21. <code>BOOST_ARCH_Z</code></a></li>
<li><a href="#_boost_arch_x86_32">4.1.22. <code>BOOST_ARCH_X86_32</code></a></li>
<li><a href="#_boost_arch_x86_64">4.1.23. <code>BOOST_ARCH_X86_64</code></a></li>
</ul>
</li>
<li><a href="#_boost_comp_compiler_macros">4.2. <code>BOOST_COMP</code> compiler macros</a>
@ -2153,6 +2154,10 @@ and "Y", "M", "D" for dates.</p>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__powerpc64__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__POWERPC__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
@ -2161,6 +2166,18 @@ and "Y", "M", "D" for dates.</p>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__ppc64__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__PPC__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__PPC64__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>_M_PPC</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
@ -2169,6 +2186,10 @@ and "Y", "M", "D" for dates.</p>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>_ARCH_PPC64</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__PPCGECKO__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
@ -2181,6 +2202,10 @@ and "Y", "M", "D" for dates.</p>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__ppc</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__ppc601__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">6.1.0</p></td>
</tr>
@ -2208,7 +2233,43 @@ and "Y", "M", "D" for dates.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_ptx"><a class="anchor" href="#_boost_arch_ptx"></a>4.1.11. <code>BOOST_ARCH_PTX</code></h4>
<h4 id="_boost_arch_ppc_64"><a class="anchor" href="#_boost_arch_ppc_64"></a>4.1.11. <code>BOOST_ARCH_PPC_64</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/PowerPC">PowerPC</a> 64 bit architecture.</p>
</div>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 50%;">
<col style="width: 50%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Symbol</th>
<th class="tableblock halign-left valign-top">Version</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__powerpc64__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__ppc64__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>__PPC64__</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>_ARCH_PPC64</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>detection</strong></p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_ptx"><a class="anchor" href="#_boost_arch_ptx"></a>4.1.12. <code>BOOST_ARCH_PTX</code></h4>
<div class="paragraph">
<p><a href="https://en.wikipedia.org/wiki/Parallel_Thread_Execution">PTX</a> architecture.</p>
</div>
@ -2236,7 +2297,7 @@ and "Y", "M", "D" for dates.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_pyramid"><a class="anchor" href="#_boost_arch_pyramid"></a>4.1.12. <code>BOOST_ARCH_PYRAMID</code></h4>
<h4 id="_boost_arch_pyramid"><a class="anchor" href="#_boost_arch_pyramid"></a>4.1.13. <code>BOOST_ARCH_PYRAMID</code></h4>
<div class="paragraph">
<p>Pyramid 9810 architecture.</p>
</div>
@ -2260,7 +2321,7 @@ and "Y", "M", "D" for dates.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_riscv"><a class="anchor" href="#_boost_arch_riscv"></a>4.1.13. <code>BOOST_ARCH_RISCV</code></h4>
<h4 id="_boost_arch_riscv"><a class="anchor" href="#_boost_arch_riscv"></a>4.1.14. <code>BOOST_ARCH_RISCV</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/RISC-V">RISC-V</a> architecture.</p>
</div>
@ -2284,7 +2345,7 @@ and "Y", "M", "D" for dates.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_rs6000"><a class="anchor" href="#_boost_arch_rs6000"></a>4.1.14. <code>BOOST_ARCH_RS6000</code></h4>
<h4 id="_boost_arch_rs6000"><a class="anchor" href="#_boost_arch_rs6000"></a>4.1.15. <code>BOOST_ARCH_RS6000</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/RS/6000">RS/6000</a> architecture.</p>
</div>
@ -2324,7 +2385,7 @@ and "Y", "M", "D" for dates.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_sparc"><a class="anchor" href="#_boost_arch_sparc"></a>4.1.15. <code>BOOST_ARCH_SPARC</code></h4>
<h4 id="_boost_arch_sparc"><a class="anchor" href="#_boost_arch_sparc"></a>4.1.16. <code>BOOST_ARCH_SPARC</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/SPARC">SPARC</a> architecture.</p>
</div>
@ -2368,7 +2429,7 @@ and "Y", "M", "D" for dates.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_sh"><a class="anchor" href="#_boost_arch_sh"></a>4.1.16. <code>BOOST_ARCH_SH</code></h4>
<h4 id="_boost_arch_sh"><a class="anchor" href="#_boost_arch_sh"></a>4.1.17. <code>BOOST_ARCH_SH</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/SuperH">SuperH</a> architecture:
If available versions [1-5] are specifically detected.</p>
@ -2417,7 +2478,7 @@ If available versions [1-5] are specifically detected.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_sys370"><a class="anchor" href="#_boost_arch_sys370"></a>4.1.17. <code>BOOST_ARCH_SYS370</code></h4>
<h4 id="_boost_arch_sys370"><a class="anchor" href="#_boost_arch_sys370"></a>4.1.18. <code>BOOST_ARCH_SYS370</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/System/370">System/370</a> architecture.</p>
</div>
@ -2445,7 +2506,7 @@ If available versions [1-5] are specifically detected.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_sys390"><a class="anchor" href="#_boost_arch_sys390"></a>4.1.18. <code>BOOST_ARCH_SYS390</code></h4>
<h4 id="_boost_arch_sys390"><a class="anchor" href="#_boost_arch_sys390"></a>4.1.19. <code>BOOST_ARCH_SYS390</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/System/390">System/390</a> architecture.</p>
</div>
@ -2473,7 +2534,7 @@ If available versions [1-5] are specifically detected.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_x86"><a class="anchor" href="#_boost_arch_x86"></a>4.1.19. <code>BOOST_ARCH_X86</code></h4>
<h4 id="_boost_arch_x86"><a class="anchor" href="#_boost_arch_x86"></a>4.1.20. <code>BOOST_ARCH_X86</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/X86">Intel x86</a> architecture. This is
a category to indicate that either <code>BOOST_ARCH_X86_32</code> or
@ -2481,7 +2542,7 @@ a category to indicate that either <code>BOOST_ARCH_X86_32</code> or
</div>
</div>
<div class="sect3">
<h4 id="_boost_arch_z"><a class="anchor" href="#_boost_arch_z"></a>4.1.20. <code>BOOST_ARCH_Z</code></h4>
<h4 id="_boost_arch_z"><a class="anchor" href="#_boost_arch_z"></a>4.1.21. <code>BOOST_ARCH_Z</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/Z/Architecture">z/Architecture</a> architecture.</p>
</div>
@ -2505,7 +2566,7 @@ a category to indicate that either <code>BOOST_ARCH_X86_32</code> or
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_x86_32"><a class="anchor" href="#_boost_arch_x86_32"></a>4.1.21. <code>BOOST_ARCH_X86_32</code></h4>
<h4 id="_boost_arch_x86_32"><a class="anchor" href="#_boost_arch_x86_32"></a>4.1.22. <code>BOOST_ARCH_X86_32</code></h4>
<div class="paragraph">
<p><a href="http://en.wikipedia.org/wiki/X86">Intel x86</a> architecture:
If available versions [3-6] are specifically detected.</p>
@ -2594,7 +2655,7 @@ If available versions [3-6] are specifically detected.</p>
</table>
</div>
<div class="sect3">
<h4 id="_boost_arch_x86_64"><a class="anchor" href="#_boost_arch_x86_64"></a>4.1.22. <code>BOOST_ARCH_X86_64</code></h4>
<h4 id="_boost_arch_x86_64"><a class="anchor" href="#_boost_arch_x86_64"></a>4.1.23. <code>BOOST_ARCH_X86_64</code></h4>
<div class="paragraph">
<p><a href="https://en.wikipedia.org/wiki/X86-64">X86-64</a> architecture.</p>
</div>

View File

@ -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/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PPC,BOOST_ARCH_PPC_NAME)
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PPC_64,BOOST_ARCH_PPC_64_NAME)

View File

@ -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/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_WORD_BITS,BOOST_ARCH_WORD_BITS_NAME)
#include <boost/predef/detail/test.h>
BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_WORD_BITS_16,BOOST_ARCH_WORD_BITS_16_NAME)