1218885Sdim/*===- llvm/Support/Solaris.h ------------------------------------*- C++ -*-===*
2218885Sdim *
3218885Sdim *                     The LLVM Compiler Infrastructure
4218885Sdim *
5218885Sdim * This file is distributed under the University of Illinois Open Source
6218885Sdim * License. See LICENSE.TXT for details.
7218885Sdim *
8218885Sdim *===----------------------------------------------------------------------===*
9218885Sdim *
10218885Sdim * This file contains portability fixes for Solaris hosts.
11218885Sdim *
12218885Sdim *===----------------------------------------------------------------------===*/
13218885Sdim
14249423Sdim#ifndef LLVM_SUPPORT_SOLARIS_H
15249423Sdim#define LLVM_SUPPORT_SOLARIS_H
16218885Sdim
17218885Sdim#include <sys/types.h>
18218885Sdim#include <sys/regset.h>
19218885Sdim
20263508Sdim/* Solaris doesn't have endian.h. SPARC is the only supported big-endian ISA. */
21263508Sdim#define BIG_ENDIAN 4321
22263508Sdim#define LITTLE_ENDIAN 1234
23263508Sdim#if defined(__sparc) || defined(__sparc__)
24263508Sdim#define BYTE_ORDER BIG_ENDIAN
25263508Sdim#else
26263508Sdim#define BYTE_ORDER LITTLE_ENDIAN
27263508Sdim#endif
28263508Sdim
29218885Sdim#undef CS
30218885Sdim#undef DS
31218885Sdim#undef ES
32218885Sdim#undef FS
33218885Sdim#undef GS
34218885Sdim#undef SS
35218885Sdim#undef EAX
36218885Sdim#undef ECX
37218885Sdim#undef EDX
38218885Sdim#undef EBX
39218885Sdim#undef ESP
40218885Sdim#undef EBP
41218885Sdim#undef ESI
42218885Sdim#undef EDI
43218885Sdim#undef EIP
44218885Sdim#undef UESP
45218885Sdim#undef EFL
46218885Sdim#undef ERR
47218885Sdim#undef TRAPNO
48218885Sdim
49218885Sdim#endif
50