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
14252723Sdim#ifndef LLVM_SUPPORT_SOLARIS_H
15252723Sdim#define LLVM_SUPPORT_SOLARIS_H
16218885Sdim
17218885Sdim#include <sys/types.h>
18218885Sdim#include <sys/regset.h>
19218885Sdim
20263509Sdim/* Solaris doesn't have endian.h. SPARC is the only supported big-endian ISA. */
21263509Sdim#define BIG_ENDIAN 4321
22263509Sdim#define LITTLE_ENDIAN 1234
23263509Sdim#if defined(__sparc) || defined(__sparc__)
24263509Sdim#define BYTE_ORDER BIG_ENDIAN
25263509Sdim#else
26263509Sdim#define BYTE_ORDER LITTLE_ENDIAN
27263509Sdim#endif
28263509Sdim
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