ppc.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /*
  2. Copyright Rene Rivera 2008-2015
  3. Distributed under the Boost Software License, Version 1.0.
  4. (See accompanying file LICENSE_1_0.txt or copy at
  5. http://www.boost.org/LICENSE_1_0.txt)
  6. */
  7. #ifndef BOOST_PREDEF_ARCHITECTURE_PPC_H
  8. #define BOOST_PREDEF_ARCHITECTURE_PPC_H
  9. #include <boost/predef/version_number.h>
  10. #include <boost/predef/make.h>
  11. /*`
  12. [heading `BOOST_ARCH_PPC`]
  13. [@http://en.wikipedia.org/wiki/PowerPC PowerPC] architecture.
  14. [table
  15. [[__predef_symbol__] [__predef_version__]]
  16. [[`__powerpc`] [__predef_detection__]]
  17. [[`__powerpc__`] [__predef_detection__]]
  18. [[`__POWERPC__`] [__predef_detection__]]
  19. [[`__ppc__`] [__predef_detection__]]
  20. [[`_M_PPC`] [__predef_detection__]]
  21. [[`_ARCH_PPC`] [__predef_detection__]]
  22. [[`__PPCGECKO__`] [__predef_detection__]]
  23. [[`__PPCBROADWAY__`] [__predef_detection__]]
  24. [[`_XENON`] [__predef_detection__]]
  25. [[`__ppc601__`] [6.1.0]]
  26. [[`_ARCH_601`] [6.1.0]]
  27. [[`__ppc603__`] [6.3.0]]
  28. [[`_ARCH_603`] [6.3.0]]
  29. [[`__ppc604__`] [6.4.0]]
  30. [[`__ppc604__`] [6.4.0]]
  31. ]
  32. */
  33. #define BOOST_ARCH_PPC BOOST_VERSION_NUMBER_NOT_AVAILABLE
  34. #if defined(__powerpc) || defined(__powerpc__) || \
  35. defined(__POWERPC__) || defined(__ppc__) || \
  36. defined(_M_PPC) || defined(_ARCH_PPC) || \
  37. defined(__PPCGECKO__) || defined(__PPCBROADWAY__) || \
  38. defined(_XENON)
  39. # undef BOOST_ARCH_PPC
  40. # if !defined (BOOST_ARCH_PPC) && (defined(__ppc601__) || defined(_ARCH_601))
  41. # define BOOST_ARCH_PPC BOOST_VERSION_NUMBER(6,1,0)
  42. # endif
  43. # if !defined (BOOST_ARCH_PPC) && (defined(__ppc603__) || defined(_ARCH_603))
  44. # define BOOST_ARCH_PPC BOOST_VERSION_NUMBER(6,3,0)
  45. # endif
  46. # if !defined (BOOST_ARCH_PPC) && (defined(__ppc604__) || defined(__ppc604__))
  47. # define BOOST_ARCH_PPC BOOST_VERSION_NUMBER(6,4,0)
  48. # endif
  49. # if !defined (BOOST_ARCH_PPC)
  50. # define BOOST_ARCH_PPC BOOST_VERSION_NUMBER_AVAILABLE
  51. # endif
  52. #endif
  53. #if BOOST_ARCH_PPC
  54. # define BOOST_ARCH_PPC_AVAILABLE
  55. #endif
  56. #define BOOST_ARCH_PPC_NAME "PowerPC"
  57. #endif
  58. #include <boost/predef/detail/test.h>
  59. BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PPC,BOOST_ARCH_PPC_NAME)