uClibc_arch_features.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*
  2. * Track misc arch-specific features that aren't config options
  3. */
  4. #ifndef _BITS_UCLIBC_ARCH_FEATURES_H
  5. #define _BITS_UCLIBC_ARCH_FEATURES_H
  6. /* instruction used when calling abort() to kill yourself */
  7. #define __UCLIBC_ABORT_INSTRUCTION__ "hlt"
  8. /* can your target use syscall6() for mmap ? */
  9. #undef __UCLIBC_MMAP_HAS_6_ARGS__
  10. /* does your target use syscall4() for truncate64 ? (32bit arches only) */
  11. #undef __UCLIBC_TRUNCATE64_HAS_4_ARGS__
  12. /* does your target have a broken create_module() ? */
  13. #define __UCLIBC_BROKEN_CREATE_MODULE__
  14. /* does your target have to worry about older [gs]etrlimit() ? */
  15. /* this is only an issue on i386 where linux < 2.3.25, so we just assume it works ... */
  16. #undef __UCLIBC_HANDLE_OLDER_RLIMIT__
  17. /* does your target prefix all symbols with an _ ? */
  18. #define __UCLIBC_NO_UNDERSCORES__
  19. /* does your target have an asm .set ? */
  20. #define __UCLIBC_HAVE_ASM_SET_DIRECTIVE__
  21. /* define if target doesn't like .global */
  22. #undef __UCLIBC_ASM_GLOBAL_DIRECTIVE__
  23. /* define if target supports .weak */
  24. #define __UCLIBC_HAVE_ASM_WEAK_DIRECTIVE__
  25. /* define if target supports .weakext */
  26. #undef __UCLIBC_HAVE_ASM_WEAKEXT_DIRECTIVE__
  27. /* needed probably only for ppc64 */
  28. #undef __UCLIBC_HAVE_ASM_GLOBAL_DOT_NAME__
  29. /* define if target supports IEEE signed zero floats */
  30. #define __UCLIBC_HAVE_SIGNED_ZERO__
  31. #define internal_function __attribute__ ((regparm (3), stdcall))
  32. #endif /* _BITS_UCLIBC_ARCH_FEATURES_H */