endian.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /* Copyright (C) 1992, 1996 Free Software Foundation, Inc.
  2. This file is part of the GNU C Library.
  3. The GNU C Library is free software; you can redistribute it and/or
  4. modify it under the terms of the GNU Library General Public License as
  5. published by the Free Software Foundation; either version 2 of the
  6. License, or (at your option) any later version.
  7. The GNU C Library is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  10. Library General Public License for more details.
  11. You should have received a copy of the GNU Library General Public
  12. License along with the GNU C Library; see the file COPYING.LIB. If not,
  13. write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  14. Boston, MA 02111-1307, USA. */
  15. #ifndef _ENDIAN_H
  16. #define _ENDIAN_H 1
  17. #include <features.h>
  18. /* Definitions for byte order, according to significance of bytes, from low
  19. addresses to high addresses. The value is what you get by putting '4'
  20. in the most significant byte, '3' in the second most significant byte,
  21. '2' in the second least significant byte, and '1' in the least
  22. significant byte. */
  23. #define __LITTLE_ENDIAN 1234
  24. #define __BIG_ENDIAN 4321
  25. #define __PDP_ENDIAN 3412
  26. /* This file defines `__BYTE_ORDER' for the particular machine. */
  27. #include <bytesex.h>
  28. #ifdef __USE_BSD
  29. #define LITTLE_ENDIAN __LITTLE_ENDIAN
  30. #define BIG_ENDIAN __BIG_ENDIAN
  31. #define PDP_ENDIAN __PDP_ENDIAN
  32. #define BYTE_ORDER __BYTE_ORDER
  33. #endif
  34. #endif /* endian.h */