xtensa-config.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /* Xtensa configuration settings.
  2. Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
  3. Free Software Foundation, Inc.
  4. Contributed by Bob Wilson (bwilson@tensilica.com) at Tensilica.
  5. The GNU C Library is free software; you can redistribute it and/or
  6. modify it under the terms of the GNU Lesser General Public
  7. License as published by the Free Software Foundation; either
  8. version 2.1 of the License, or (at your option) any later version.
  9. The GNU C Library is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  12. Lesser General Public License for more details.
  13. You should have received a copy of the GNU Lesser General Public
  14. License along with the GNU C Library; if not, see
  15. <http://www.gnu.org/licenses/>. */
  16. #ifndef XTENSA_CONFIG_H
  17. #define XTENSA_CONFIG_H
  18. /* The macros defined here match those with the same names in the Xtensa
  19. compile-time HAL (Hardware Abstraction Layer). Please refer to the
  20. Xtensa System Software Reference Manual for documentation of these
  21. macros. */
  22. /* The following macros reflect the default expectations for Xtensa
  23. processor configurations that can run glibc. If you want to try
  24. building glibc for an Xtensa configuration that is missing these
  25. options, you will at least need to change the values of these
  26. macros. */
  27. #undef XCHAL_HAVE_NSA
  28. #ifdef __XCHAL_HAVE_NSA
  29. #define XCHAL_HAVE_NSA __XCHAL_HAVE_NSA
  30. #else
  31. #define XCHAL_HAVE_NSA 1
  32. #endif
  33. #undef XCHAL_HAVE_LOOPS
  34. #ifdef __XCHAL_HAVE_LOOPS
  35. #define XCHAL_HAVE_LOOPS __XCHAL_HAVE_LOOPS
  36. #else
  37. #define XCHAL_HAVE_LOOPS 1
  38. #endif
  39. /* Assume the maximum number of AR registers. This currently only affects
  40. the __window_spill function, and it is always safe to flush extra. */
  41. #undef XCHAL_NUM_AREGS
  42. #ifdef __XCHAL_NUM_AREGS
  43. #define XCHAL_NUM_AREGS __XCHAL_NUM_AREGS
  44. #else
  45. #define XCHAL_NUM_AREGS 64
  46. #endif
  47. #undef XCHAL_HAVE_S32C1I
  48. #ifdef __XCHAL_HAVE_S32C1I
  49. #define XCHAL_HAVE_S32C1I __XCHAL_HAVE_S32C1I
  50. #else
  51. #define XCHAL_HAVE_S32C1I 1
  52. #endif
  53. #undef XCHAL_HAVE_EXCLUSIVE
  54. #ifdef __XCHAL_HAVE_EXCLUSIVE
  55. #define XCHAL_HAVE_EXCLUSIVE __XCHAL_HAVE_EXCLUSIVE
  56. #else
  57. #define XCHAL_HAVE_EXCLUSIVE 0
  58. #endif
  59. #endif /* !XTENSA_CONFIG_H */