Home | History | Annotate | Download | only in patches
      1 From 75d1e0c4b102d6c244e10b83427ca5a52b89cab6 Mon Sep 17 00:00:00 2001
      2 From: Tim Murray <timmurray (a] google.com>
      3 Date: Thu, 27 Mar 2014 14:04:43 -0700
      4 Subject: [PATCH 2/5] Add basic Android configuration.
      5 
      6 Change-Id: I0102d75a076e96e15606cbecc86b069c0fc43bf1
      7 ---
      8  device/include/llvm/Config/AsmParsers.def    |  39 ++
      9  device/include/llvm/Config/AsmPrinters.def   |  39 ++
     10  device/include/llvm/Config/Disassemblers.def |  39 ++
     11  device/include/llvm/Config/Targets.def       |  38 ++
     12  device/include/llvm/Config/config.h          | 689 +++++++++++++++++++++++++
     13  device/include/llvm/Config/llvm-config.h     |  94 ++++
     14  host/include/llvm/Config/AsmParsers.def      |  32 ++
     15  host/include/llvm/Config/AsmPrinters.def     |  32 ++
     16  host/include/llvm/Config/Disassemblers.def   |  32 ++
     17  host/include/llvm/Config/Targets.def         |  31 ++
     18  host/include/llvm/Config/config.h            | 725 +++++++++++++++++++++++++++
     19  host/include/llvm/Config/llvm-config.h       | 102 ++++
     20  include/llvm/Config/llvm-platform-config.h   | 160 ++++++
     21  include/llvm/Support/DataTypes.h             | 213 ++++++++
     22  14 files changed, 2265 insertions(+)
     23  create mode 100644 device/include/llvm/Config/AsmParsers.def
     24  create mode 100644 device/include/llvm/Config/AsmPrinters.def
     25  create mode 100644 device/include/llvm/Config/Disassemblers.def
     26  create mode 100644 device/include/llvm/Config/Targets.def
     27  create mode 100644 device/include/llvm/Config/config.h
     28  create mode 100644 device/include/llvm/Config/llvm-config.h
     29  create mode 100644 host/include/llvm/Config/AsmParsers.def
     30  create mode 100644 host/include/llvm/Config/AsmPrinters.def
     31  create mode 100644 host/include/llvm/Config/Disassemblers.def
     32  create mode 100644 host/include/llvm/Config/Targets.def
     33  create mode 100644 host/include/llvm/Config/config.h
     34  create mode 100644 host/include/llvm/Config/llvm-config.h
     35  create mode 100644 include/llvm/Config/llvm-platform-config.h
     36  create mode 100644 include/llvm/Support/DataTypes.h
     37 
     38 diff --git a/device/include/llvm/Config/AsmParsers.def b/device/include/llvm/Config/AsmParsers.def
     39 new file mode 100644
     40 index 0000000..ca3af2c
     41 --- /dev/null
     42 +++ b/device/include/llvm/Config/AsmParsers.def
     43 @@ -0,0 +1,39 @@
     44 +//===- llvm/Config/AsmParsers.def - LLVM Assembly Parsers -------*- C++ -*-===//
     45 +//
     46 +//                     The LLVM Compiler Infrastructure
     47 +//
     48 +// This file is distributed under the University of Illinois Open Source
     49 +// License. See LICENSE.TXT for details.
     50 +//
     51 +//===----------------------------------------------------------------------===//
     52 +//
     53 +// This file enumerates all of the assembly-language parsers
     54 +// supported by this build of LLVM. Clients of this file should define
     55 +// the LLVM_ASM_PARSER macro to be a function-like macro with a
     56 +// single parameter (the name of the target whose assembly can be
     57 +// generated); including this file will then enumerate all of the
     58 +// targets with assembly parsers.
     59 +//
     60 +// The set of targets supported by LLVM is generated at configuration
     61 +// time, at which point this header is generated. Do not modify this
     62 +// header directly.
     63 +//
     64 +//===----------------------------------------------------------------------===//
     65 +
     66 +#ifndef LLVM_ASM_PARSER
     67 +#  error Please define the macro LLVM_ASM_PARSER(TargetName)
     68 +#endif
     69 +
     70 +#if defined(__arm__)
     71 +  LLVM_ASM_PARSER(ARM)
     72 +#elif defined(__mips__)
     73 +  LLVM_ASM_PARSER(Mips)
     74 +#elif defined(__i386__) || defined(__x86_64__)
     75 +  LLVM_ASM_PARSER(X86)
     76 +#elif defined(__aarch64__)
     77 +  LLVM_ASM_PARSER(AArch64)
     78 +#else
     79 +#  error Unsupported TARGET_ARCH for LLVM_ASM_PARSER
     80 +#endif
     81 +
     82 +#undef LLVM_ASM_PARSER
     83 diff --git a/device/include/llvm/Config/AsmPrinters.def b/device/include/llvm/Config/AsmPrinters.def
     84 new file mode 100644
     85 index 0000000..3a396c2
     86 --- /dev/null
     87 +++ b/device/include/llvm/Config/AsmPrinters.def
     88 @@ -0,0 +1,39 @@
     89 +//===- llvm/Config/AsmPrinters.def - LLVM Assembly Printers -----*- C++ -*-===//
     90 +//
     91 +//                     The LLVM Compiler Infrastructure
     92 +//
     93 +// This file is distributed under the University of Illinois Open Source
     94 +// License. See LICENSE.TXT for details.
     95 +//
     96 +//===----------------------------------------------------------------------===//
     97 +//
     98 +// This file enumerates all of the assembly-language printers
     99 +// supported by this build of LLVM. Clients of this file should define
    100 +// the LLVM_ASM_PRINTER macro to be a function-like macro with a
    101 +// single parameter (the name of the target whose assembly can be
    102 +// generated); including this file will then enumerate all of the
    103 +// targets with assembly printers.
    104 +//
    105 +// The set of targets supported by LLVM is generated at configuration
    106 +// time, at which point this header is generated. Do not modify this
    107 +// header directly.
    108 +//
    109 +//===----------------------------------------------------------------------===//
    110 +
    111 +#ifndef LLVM_ASM_PRINTER
    112 +#  error Please define the macro LLVM_ASM_PRINTER(TargetName)
    113 +#endif
    114 +
    115 +#if defined(__arm__)
    116 +  LLVM_ASM_PRINTER(ARM)
    117 +#elif defined(__mips__)
    118 +  LLVM_ASM_PRINTER(Mips)
    119 +#elif defined(__i386__) || defined(__x86_64__)
    120 +  LLVM_ASM_PRINTER(X86)
    121 +#elif defined(__aarch64__)
    122 +  LLVM_ASM_PRINTER(AArch64)
    123 +#else
    124 +#  error Unsupported TARGET_ARCH for LLVM_ASM_PRINTER
    125 +#endif
    126 +
    127 +#undef LLVM_ASM_PRINTER
    128 diff --git a/device/include/llvm/Config/Disassemblers.def b/device/include/llvm/Config/Disassemblers.def
    129 new file mode 100644
    130 index 0000000..aba88f8
    131 --- /dev/null
    132 +++ b/device/include/llvm/Config/Disassemblers.def
    133 @@ -0,0 +1,39 @@
    134 +//===- llvm/Config/Disassemblers.def - LLVM Assembly Parsers ----*- C++ -*-===//
    135 +//
    136 +//                     The LLVM Compiler Infrastructure
    137 +//
    138 +// This file is distributed under the University of Illinois Open Source
    139 +// License. See LICENSE.TXT for details.
    140 +//
    141 +//===----------------------------------------------------------------------===//
    142 +//
    143 +// This file enumerates all of the assembly-language parsers
    144 +// supported by this build of LLVM. Clients of this file should define
    145 +// the LLVM_ASM_PARSER macro to be a function-like macro with a
    146 +// single parameter (the name of the target whose assembly can be
    147 +// generated); including this file will then enumerate all of the
    148 +// targets with assembly parsers.
    149 +//
    150 +// The set of targets supported by LLVM is generated at configuration
    151 +// time, at which point this header is generated. Do not modify this
    152 +// header directly.
    153 +//
    154 +//===----------------------------------------------------------------------===//
    155 +
    156 +#ifndef LLVM_DISASSEMBLER
    157 +#  error Please define the macro LLVM_DISASSEMBLER(TargetName)
    158 +#endif
    159 +
    160 +#if defined(__arm__)
    161 +  LLVM_DISASSEMBLER(ARM)
    162 +#elif defined(__mips__)
    163 +  LLVM_DISASSEMBLER(Mips)
    164 +#elif defined(__i386__) || defined(__x86_64__)
    165 +  LLVM_DISASSEMBLER(X86)
    166 +#elif defined(__aarch64__)
    167 +  LLVM_DISASSEMBLER(AArch64)
    168 +#else
    169 +#  error Unsupported TARGET_ARCH for LLVM_DISASSEMBLER
    170 +#endif
    171 +
    172 +#undef LLVM_DISASSEMBLER
    173 diff --git a/device/include/llvm/Config/Targets.def b/device/include/llvm/Config/Targets.def
    174 new file mode 100644
    175 index 0000000..f30c81f
    176 --- /dev/null
    177 +++ b/device/include/llvm/Config/Targets.def
    178 @@ -0,0 +1,38 @@
    179 +/*===- llvm/Config/Targets.def - LLVM Target Architectures ------*- C++ -*-===*\
    180 +|*                                                                            *|
    181 +|*                     The LLVM Compiler Infrastructure                       *|
    182 +|*                                                                            *|
    183 +|* This file is distributed under the University of Illinois Open Source      *|
    184 +|* License. See LICENSE.TXT for details.                                      *|
    185 +|*                                                                            *|
    186 +|*===----------------------------------------------------------------------===*|
    187 +|*                                                                            *|
    188 +|* This file enumerates all of the target architectures supported by          *|
    189 +|* this build of LLVM. Clients of this file should define the                 *|
    190 +|* LLVM_TARGET macro to be a function-like macro with a single                *|
    191 +|* parameter (the name of the target); including this file will then          *|
    192 +|* enumerate all of the targets.                                              *|
    193 +|*                                                                            *|
    194 +|* The set of targets supported by LLVM is generated at configuration         *|
    195 +|* time, at which point this header is generated. Do not modify this          *|
    196 +|* header directly.                                                           *|
    197 +|*                                                                            *|
    198 +\*===----------------------------------------------------------------------===*/
    199 +
    200 +#ifndef LLVM_TARGET
    201 +#  error Please define the macro LLVM_TARGET(TargetName)
    202 +#endif
    203 +
    204 +#if defined(__arm__)
    205 +  LLVM_TARGET(ARM)
    206 +#elif defined(__mips__)
    207 +  LLVM_TARGET(Mips)
    208 +#elif defined(__i386__) || defined(__x86_64__)
    209 +  LLVM_TARGET(X86)
    210 +#elif defined(__aarch64__)
    211 +  LLVM_TARGET(AArch64)
    212 +#else
    213 +#  error Unsupported TARGET_ARCH for LLVM_TARGET
    214 +#endif
    215 +
    216 +#undef LLVM_TARGET
    217 diff --git a/device/include/llvm/Config/config.h b/device/include/llvm/Config/config.h
    218 new file mode 100644
    219 index 0000000..f76132a
    220 --- /dev/null
    221 +++ b/device/include/llvm/Config/config.h
    222 @@ -0,0 +1,689 @@
    223 +/* include/llvm/Config/config.h.  Generated from config.h.in by configure.  */
    224 +/* include/llvm/Config/config.h.in.  Generated from autoconf/configure.ac by autoheader.  */
    225 +
    226 +#ifndef CONFIG_H
    227 +#define CONFIG_H
    228 +
    229 +/* Bug report URL. */
    230 +#define BUG_REPORT_URL "http://llvm.org/bugs/"
    231 +
    232 +/* Relative directory for resource files */
    233 +#define CLANG_RESOURCE_DIR ""
    234 +
    235 +/* Directories clang will search for headers */
    236 +#define C_INCLUDE_DIRS ""
    237 +
    238 +/* Default <path> to all compiler invocations for --sysroot=<path>. */
    239 +#define DEFAULT_SYSROOT ""
    240 +
    241 +/* Define if position independent code is enabled */
    242 +#define ENABLE_PIC 1
    243 +
    244 +/* Define if timestamp information (e.g., __DATE___) is allowed */
    245 +#define ENABLE_TIMESTAMPS 1
    246 +
    247 +/* Directory where gcc is installed. */
    248 +#define GCC_INSTALL_PREFIX ""
    249 +
    250 +/* Define to 1 if you have the `argz_append' function. */
    251 +/* #undef HAVE_ARGZ_APPEND */
    252 +
    253 +/* Define to 1 if you have the `argz_create_sep' function. */
    254 +/* #undef HAVE_ARGZ_CREATE_SEP */
    255 +
    256 +/* Define to 1 if you have the <argz.h> header file. */
    257 +/* #undef HAVE_ARGZ_H */
    258 +
    259 +/* Define to 1 if you have the `argz_insert' function. */
    260 +/* #undef HAVE_ARGZ_INSERT */
    261 +
    262 +/* Define to 1 if you have the `argz_next' function. */
    263 +/* #undef HAVE_ARGZ_NEXT */
    264 +
    265 +/* Define to 1 if you have the `argz_stringify' function. */
    266 +/* #undef HAVE_ARGZ_STRINGIFY */
    267 +
    268 +/* Define to 1 if you have the <assert.h> header file. */
    269 +#define HAVE_ASSERT_H 1
    270 +
    271 +/* Define to 1 if you have the `backtrace' function. */
    272 +#if defined(HAVE_BACKTRACE) && HAVE_BACKTRACE == 0
    273 +/* Defined by AndroidConfig.h as 0 */
    274 +#undef HAVE_BACKTRACE
    275 +#endif
    276 +
    277 +/* Define to 1 if you have the `bcopy' function. */
    278 +/* #undef HAVE_BCOPY */
    279 +
    280 +/* Define to 1 if you have the `ceilf' function. */
    281 +#define HAVE_CEILF 1
    282 +
    283 +/* Define if the neat program is available */
    284 +/* #undef HAVE_CIRCO */
    285 +
    286 +/* Define to 1 if you have the `closedir' function. */
    287 +#define HAVE_CLOSEDIR 1
    288 +
    289 +/* Define to 1 if you have the <CrashReporterClient.h> header file. */
    290 +/* #undef HAVE_CRASHREPORTERCLIENT_H */
    291 +
    292 +/* Define if __crashreporter_info__ exists. */
    293 +/* #undef HAVE_CRASHREPORTER_INFO */
    294 +
    295 +/* Define to 1 if you have the <ctype.h> header file. */
    296 +#define HAVE_CTYPE_H 1
    297 +
    298 +/* Define to 1 if you have the <cxxabi.h> header file. */
    299 +#define HAVE_CXXABI_H 0
    300 +
    301 +/* Define to 1 if you have the declaration of `strerror_s', and to 0 if you
    302 +   don't. */
    303 +#define HAVE_DECL_STRERROR_S 0
    304 +
    305 +/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
    306 +   */
    307 +#define HAVE_DIRENT_H 1
    308 +
    309 +/* Define if you have the GNU dld library. */
    310 +/* #undef HAVE_DLD */
    311 +
    312 +/* Define to 1 if you have the <dld.h> header file. */
    313 +/* #undef HAVE_DLD_H */
    314 +
    315 +/* Define to 1 if you have the `dlerror' function. */
    316 +#define HAVE_DLERROR 1
    317 +
    318 +/* Define to 1 if you have the <dlfcn.h> header file. */
    319 +#define HAVE_DLFCN_H 1
    320 +
    321 +/* Define if dlopen() is available on this platform. */
    322 +#define HAVE_DLOPEN 1
    323 +
    324 +/* Define to 1 if you have the <dl.h> header file. */
    325 +/* #undef HAVE_DL_H */
    326 +
    327 +/* Define if the dot program is available */
    328 +/* #undef HAVE_DOT */
    329 +
    330 +/* Define if the dotty program is available */
    331 +/* #undef HAVE_DOTTY */
    332 +
    333 +/* Define if you have the _dyld_func_lookup function. */
    334 +/* #undef HAVE_DYLD */
    335 +
    336 +/* Define to 1 if you have the <errno.h> header file. */
    337 +#define HAVE_ERRNO_H 1
    338 +
    339 +/* Define to 1 if the system has the type `error_t'. */
    340 +#define HAVE_ERROR_T 1
    341 +
    342 +/* Define to 1 if you have the <execinfo.h> header file. */
    343 +#define HAVE_EXECINFO_H 0
    344 +
    345 +/* Define to 1 if you have the <fcntl.h> header file. */
    346 +#define HAVE_FCNTL_H 1
    347 +
    348 +/* Define if the neat program is available */
    349 +/* #undef HAVE_FDP */
    350 +
    351 +/* Define to 1 if you have the <fenv.h> header file. */
    352 +#define HAVE_FENV_H 1
    353 +
    354 +/* Define if libffi is available on this platform. */
    355 +/* #undef HAVE_FFI_CALL */
    356 +
    357 +/* Define to 1 if you have the <ffi/ffi.h> header file. */
    358 +/* #undef HAVE_FFI_FFI_H */
    359 +
    360 +/* Define to 1 if you have the <ffi.h> header file. */
    361 +/* #undef HAVE_FFI_H */
    362 +
    363 +/* Set to 1 if the finite function is found in <ieeefp.h> */
    364 +/* #undef HAVE_FINITE_IN_IEEEFP_H */
    365 +
    366 +/* Define to 1 if you have the `floorf' function. */
    367 +#define HAVE_FLOORF 1
    368 +
    369 +/* Define to 1 if you have the `fmodf' function. */
    370 +#define HAVE_FMODF 1
    371 +
    372 +/* Define to 1 if you have the `futimens' function. */
    373 +#define HAVE_FUTIMENS 1
    374 +
    375 +/* Define to 1 if you have the `getcwd' function. */
    376 +#define HAVE_GETCWD 1
    377 +
    378 +/* Define to 1 if you have the `getpagesize' function. */
    379 +#define HAVE_GETPAGESIZE 1
    380 +
    381 +/* Define to 1 if you have the `getrlimit' function. */
    382 +#define HAVE_GETRLIMIT 1
    383 +
    384 +/* Define to 1 if you have the `getrusage' function. */
    385 +#define HAVE_GETRUSAGE 1
    386 +
    387 +/* Define to 1 if you have the `gettimeofday' function. */
    388 +#define HAVE_GETTIMEOFDAY 1
    389 +
    390 +/* Define if the Graphviz program is available */
    391 +/* #undef HAVE_GRAPHVIZ */
    392 +
    393 +/* Define if the gv program is available */
    394 +/* #undef HAVE_GV */
    395 +
    396 +/* Define to 1 if you have the `index' function. */
    397 +/* #undef HAVE_INDEX */
    398 +
    399 +/* Define to 1 if the system has the type `int64_t'. */
    400 +#define HAVE_INT64_T 1
    401 +
    402 +/* Define to 1 if you have the <inttypes.h> header file. */
    403 +#define HAVE_INTTYPES_H 1
    404 +
    405 +/* Define to 1 if you have the `isatty' function. */
    406 +#define HAVE_ISATTY 1
    407 +
    408 +/* Set to 1 if the isinf function is found in <cmath> */
    409 +#define HAVE_ISINF_IN_CMATH 1
    410 +
    411 +/* Set to 1 if the isinf function is found in <math.h> */
    412 +#define HAVE_ISINF_IN_MATH_H 1
    413 +
    414 +/* Set to 1 if the isnan function is found in <cmath> */
    415 +#define HAVE_ISNAN_IN_CMATH 1
    416 +
    417 +/* Set to 1 if the isnan function is found in <math.h> */
    418 +#define HAVE_ISNAN_IN_MATH_H 1
    419 +
    420 +/* Define if you have the libdl library or equivalent. */
    421 +#define HAVE_LIBDL 1
    422 +
    423 +/* Define to 1 if you have the `imagehlp' library (-limagehlp). */
    424 +/* #undef HAVE_LIBIMAGEHLP */
    425 +
    426 +/* Define to 1 if you have the `m' library (-lm). */
    427 +#define HAVE_LIBM 1
    428 +
    429 +/* Define to 1 if you have the `psapi' library (-lpsapi). */
    430 +/* #undef HAVE_LIBPSAPI */
    431 +
    432 +/* Define to 1 if you have the `pthread' library (-lpthread). */
    433 +#define HAVE_LIBPTHREAD 1
    434 +
    435 +/* Define to 1 if you have the `udis86' library (-ludis86). */
    436 +/* #undef HAVE_LIBUDIS86 */
    437 +
    438 +/* Define to 1 if you have the <limits.h> header file. */
    439 +#define HAVE_LIMITS_H 1
    440 +
    441 +/* Define if you can use -Wl,-export-dynamic. */
    442 +#define HAVE_LINK_EXPORT_DYNAMIC 1
    443 +
    444 +/* Define to 1 if you have the <link.h> header file. */
    445 +#define HAVE_LINK_H 1
    446 +
    447 +/* Define if you can use -Wl,-R. to pass -R. to the linker, in order to add
    448 +   the current directory to the dynamic linker search path. */
    449 +#define HAVE_LINK_R 1
    450 +
    451 +/* Define to 1 if you have the `longjmp' function. */
    452 +#define HAVE_LONGJMP 1
    453 +
    454 +/* Define to 1 if you have the <mach/mach.h> header file. */
    455 +/* #undef HAVE_MACH_MACH_H */
    456 +
    457 +/* Define to 1 if you have the <mach-o/dyld.h> header file. */
    458 +/* #undef HAVE_MACH_O_DYLD_H */
    459 +
    460 +/* Define if mallinfo() is available on this platform. */
    461 +#define HAVE_MALLINFO 1
    462 +
    463 +/* Define to 1 if you have the <malloc.h> header file. */
    464 +//#define HAVE_MALLOC_H 1 /* Defined by AndroidConfig.h */
    465 +
    466 +/* Define to 1 if you have the <malloc/malloc.h> header file. */
    467 +/* #undef HAVE_MALLOC_MALLOC_H */
    468 +
    469 +/* Define to 1 if you have the `malloc_zone_statistics' function. */
    470 +/* #undef HAVE_MALLOC_ZONE_STATISTICS */
    471 +
    472 +/* Define to 1 if you have the `memcpy' function. */
    473 +#define HAVE_MEMCPY 1
    474 +
    475 +/* Define to 1 if you have the `memmove' function. */
    476 +#define HAVE_MEMMOVE 1
    477 +
    478 +/* Define to 1 if you have the <memory.h> header file. */
    479 +#define HAVE_MEMORY_H 1
    480 +
    481 +/* Define to 1 if you have the `mkdtemp' function. */
    482 +#define HAVE_MKDTEMP 0
    483 +
    484 +/* Define to 1 if you have the `mkstemp' function. */
    485 +#define HAVE_MKSTEMP 1
    486 +
    487 +/* Define to 1 if you have the `mktemp' function. */
    488 +#define HAVE_MKTEMP 1
    489 +
    490 +/* Define to 1 if you have a working `mmap' system call. */
    491 +#define HAVE_MMAP 1
    492 +
    493 +/* Define if mmap() uses MAP_ANONYMOUS to map anonymous pages, or undefine if
    494 +   it uses MAP_ANON */
    495 +#define HAVE_MMAP_ANONYMOUS 1
    496 +
    497 +/* Define if mmap() can map files into memory */
    498 +#define HAVE_MMAP_FILE
    499 +
    500 +/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
    501 +/* #undef HAVE_NDIR_H */
    502 +
    503 +/* Define to 1 if you have the `nearbyintf' function. */
    504 +#define HAVE_NEARBYINTF 1
    505 +
    506 +/* Define if the neat program is available */
    507 +/* #undef HAVE_NEATO */
    508 +
    509 +/* Define to 1 if you have the `opendir' function. */
    510 +#define HAVE_OPENDIR 1
    511 +
    512 +/* Define to 1 if you have the `posix_spawn' function. */
    513 +/* #undef HAVE_POSIX_SPAWN */
    514 +
    515 +/* Define to 1 if you have the `powf' function. */
    516 +#define HAVE_POWF 1
    517 +
    518 +/* Define to 1 if you have the `pread' function. */
    519 +#define HAVE_PREAD 1
    520 +
    521 +/* Define if libtool can extract symbol lists from object files. */
    522 +#define HAVE_PRELOADED_SYMBOLS 1
    523 +
    524 +/* Define to have the %a format string */
    525 +#define HAVE_PRINTF_A 1
    526 +
    527 +/* Have pthread_getspecific */
    528 +#define HAVE_PTHREAD_GETSPECIFIC 1
    529 +
    530 +/* Define to 1 if you have the <pthread.h> header file. */
    531 +#define HAVE_PTHREAD_H 1
    532 +
    533 +/* Have pthread_mutex_lock */
    534 +#define HAVE_PTHREAD_MUTEX_LOCK 1
    535 +
    536 +/* Have pthread_rwlock_init */
    537 +#define HAVE_PTHREAD_RWLOCK_INIT 1
    538 +
    539 +/* Define to 1 if srand48/lrand48/drand48 exist in <stdlib.h> */
    540 +#define HAVE_RAND48 1
    541 +
    542 +/* Define to 1 if you have the `readdir' function. */
    543 +#define HAVE_READDIR 1
    544 +
    545 +/* Define to 1 if you have the `realpath' function. */
    546 +#define HAVE_REALPATH 1
    547 +
    548 +/* Define to 1 if you have the `rindex' function. */
    549 +/* #undef HAVE_RINDEX */
    550 +
    551 +/* Define to 1 if you have the `rintf' function. */
    552 +#define HAVE_RINTF 1
    553 +
    554 +/* Define to 1 if you have the `round' function. */
    555 +#define HAVE_ROUND 1
    556 +
    557 +/* Define to 1 if you have the `roundf' function. */
    558 +#define HAVE_ROUNDF 1
    559 +
    560 +/* Define to 1 if you have the `sbrk' function. */
    561 +#define HAVE_SBRK 1
    562 +
    563 +/* Define to 1 if you have the `setenv' function. */
    564 +#define HAVE_SETENV 1
    565 +
    566 +/* Define to 1 if you have the `setjmp' function. */
    567 +#define HAVE_SETJMP 1
    568 +
    569 +/* Define to 1 if you have the <setjmp.h> header file. */
    570 +#define HAVE_SETJMP_H 1
    571 +
    572 +/* Define to 1 if you have the `setrlimit' function. */
    573 +#define HAVE_SETRLIMIT 1
    574 +
    575 +/* Define if you have the shl_load function. */
    576 +/* #undef HAVE_SHL_LOAD */
    577 +
    578 +/* Define to 1 if you have the `siglongjmp' function. */
    579 +#define HAVE_SIGLONGJMP 1
    580 +
    581 +/* Define to 1 if you have the <signal.h> header file. */
    582 +#define HAVE_SIGNAL_H 1
    583 +
    584 +/* Define to 1 if you have the `sigsetjmp' function. */
    585 +/* #undef HAVE_SIGSETJMP */
    586 +
    587 +/* Define to 1 if you have the <stdint.h> header file. */
    588 +#define HAVE_STDINT_H 1
    589 +
    590 +/* Define to 1 if you have the <stdio.h> header file. */
    591 +#define HAVE_STDIO_H 1
    592 +
    593 +/* Define to 1 if you have the <stdlib.h> header file. */
    594 +#define HAVE_STDLIB_H 1
    595 +
    596 +/* Set to 1 if the std::isinf function is found in <cmath> */
    597 +/* #undef HAVE_STD_ISINF_IN_CMATH */
    598 +
    599 +/* Set to 1 if the std::isnan function is found in <cmath> */
    600 +#define HAVE_STD_ISNAN_IN_CMATH 1
    601 +
    602 +/* Define to 1 if you have the `strchr' function. */
    603 +#define HAVE_STRCHR 1
    604 +
    605 +/* Define to 1 if you have the `strcmp' function. */
    606 +#define HAVE_STRCMP 1
    607 +
    608 +/* Define to 1 if you have the `strdup' function. */
    609 +#define HAVE_STRDUP 1
    610 +
    611 +/* Define to 1 if you have the `strerror' function. */
    612 +#define HAVE_STRERROR 1
    613 +
    614 +/* Define to 1 if you have the `strerror_r' function. */
    615 +#ifndef USE_MINGW
    616 +#define HAVE_STRERROR_R 1
    617 +#endif
    618 +
    619 +/* Define to 1 if you have the <strings.h> header file. */
    620 +#define HAVE_STRINGS_H 1
    621 +
    622 +/* Define to 1 if you have the <string.h> header file. */
    623 +#define HAVE_STRING_H 1
    624 +
    625 +/* Define to 1 if you have the `strrchr' function. */
    626 +#define HAVE_STRRCHR 1
    627 +
    628 +/* Define to 1 if you have the `strtof' function. */
    629 +#define HAVE_STRTOF 1
    630 +
    631 +/* Define to 1 if you have the `strtoll' function. */
    632 +#define HAVE_STRTOLL 1
    633 +
    634 +/* Define to 1 if you have the `strtoq' function. */
    635 +#define HAVE_STRTOQ 1
    636 +
    637 +/* Define to 1 if you have the `sysconf' function. */
    638 +#define HAVE_SYSCONF 1
    639 +
    640 +/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
    641 +   */
    642 +/* #undef HAVE_SYS_DIR_H */
    643 +
    644 +/* Define to 1 if you have the <sys/dl.h> header file. */
    645 +/* #undef HAVE_SYS_DL_H */
    646 +
    647 +/* Define to 1 if you have the <sys/ioctl.h> header file. */
    648 +#define HAVE_SYS_IOCTL_H 1
    649 +
    650 +/* Define to 1 if you have the <sys/mman.h> header file. */
    651 +#define HAVE_SYS_MMAN_H 1
    652 +
    653 +/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
    654 +   */
    655 +/* #undef HAVE_SYS_NDIR_H */
    656 +
    657 +/* Define to 1 if you have the <sys/param.h> header file. */
    658 +#define HAVE_SYS_PARAM_H 1
    659 +
    660 +/* Define to 1 if you have the <sys/resource.h> header file. */
    661 +#define HAVE_SYS_RESOURCE_H 1
    662 +
    663 +/* Define to 1 if you have the <sys/stat.h> header file. */
    664 +#define HAVE_SYS_STAT_H 1
    665 +
    666 +/* Define to 1 if you have the <sys/time.h> header file. */
    667 +#define HAVE_SYS_TIME_H 1
    668 +
    669 +/* Define to 1 if you have the <sys/types.h> header file. */
    670 +#define HAVE_SYS_TYPES_H 1
    671 +
    672 +/* Define to 1 if you have the <sys/uio.h> header file. */
    673 +#define HAVE_SYS_UIO_H 1
    674 +
    675 +/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
    676 +#define HAVE_SYS_WAIT_H 1
    677 +
    678 +/* Define to 1 if you have the <termios.h> header file. */
    679 +#define HAVE_TERMIOS_H 1
    680 +
    681 +/* Define if the neat program is available */
    682 +/* #undef HAVE_TWOPI */
    683 +
    684 +/* Define to 1 if the system has the type `uint64_t'. */
    685 +#define HAVE_UINT64_T 1
    686 +
    687 +/* Define to 1 if you have the <unistd.h> header file. */
    688 +#define HAVE_UNISTD_H 1
    689 +
    690 +/* Define to 1 if you have the <utime.h> header file. */
    691 +#define HAVE_UTIME_H 1
    692 +
    693 +/* Define to 1 if the system has the type `u_int64_t'. */
    694 +/* #undef HAVE_U_INT64_T */
    695 +
    696 +/* Define to 1 if you have the <valgrind/valgrind.h> header file. */
    697 +/* #undef HAVE_VALGRIND_VALGRIND_H */
    698 +
    699 +/* Define to 1 if you have the <windows.h> header file. */
    700 +/* #undef HAVE_WINDOWS_H */
    701 +
    702 +/* Define to 1 if you have the `writev' function. */
    703 +#define HAVE_WRITEV 1
    704 +
    705 +/* Define if the xdot.py program is available */
    706 +/* #undef HAVE_XDOT_PY */
    707 +
    708 +/* Have host's _alloca */
    709 +/* #undef HAVE__ALLOCA */
    710 +
    711 +/* Have host's __alloca */
    712 +/* #undef HAVE___ALLOCA */
    713 +
    714 +/* Have host's __ashldi3 */
    715 +/* #undef HAVE___ASHLDI3 */
    716 +
    717 +/* Have host's __ashrdi3 */
    718 +/* #undef HAVE___ASHRDI3 */
    719 +
    720 +/* Have host's __chkstk */
    721 +/* #undef HAVE___CHKSTK */
    722 +
    723 +/* Have host's __cmpdi2 */
    724 +/* #undef HAVE___CMPDI2 */
    725 +
    726 +/* Have host's __divdi3 */
    727 +/* #undef HAVE___DIVDI3 */
    728 +
    729 +/* Define to 1 if you have the `__dso_handle' function. */
    730 +#define HAVE___DSO_HANDLE 1
    731 +
    732 +/* Have host's __fixdfdi */
    733 +/* #undef HAVE___FIXDFDI */
    734 +
    735 +/* Have host's __fixsfdi */
    736 +/* #undef HAVE___FIXSFDI */
    737 +
    738 +/* Have host's __floatdidf */
    739 +/* #undef HAVE___FLOATDIDF */
    740 +
    741 +/* Have host's __lshrdi3 */
    742 +/* #undef HAVE___LSHRDI3 */
    743 +
    744 +/* Have host's __main */
    745 +/* #undef HAVE___MAIN */
    746 +
    747 +/* Have host's __moddi3 */
    748 +/* #undef HAVE___MODDI3 */
    749 +
    750 +/* Have host's __udivdi3 */
    751 +/* #undef HAVE___UDIVDI3 */
    752 +
    753 +/* Have host's __umoddi3 */
    754 +/* #undef HAVE___UMODDI3 */
    755 +
    756 +/* Have host's ___chkstk */
    757 +/* #undef HAVE____CHKSTK */
    758 +
    759 +/* Linker version detected at compile time. */
    760 +#define HOST_LINK_VERSION "2.20.1"
    761 +
    762 +/* Installation directory for binary executables */
    763 +#define LLVM_BINDIR "/opt/llvm-android/bin"
    764 +
    765 +/* Time at which LLVM was configured */
    766 +#define LLVM_CONFIGTIME "Tue May  8 14:22:45 CST 2012"
    767 +
    768 +/* Installation directory for data files */
    769 +#define LLVM_DATADIR "/opt/llvm-android/share/llvm"
    770 +
    771 +/* Target triple LLVM will generate code for by default */
    772 +#define LLVM_DEFAULT_TARGET_TRIPLE "i386-unknown-linux"
    773 +
    774 +/* Installation directory for documentation */
    775 +#define LLVM_DOCSDIR "/opt/llvm-android/share/doc/llvm"
    776 +
    777 +/* Define if threads enabled */
    778 +#define LLVM_ENABLE_THREADS 1
    779 +
    780 +/* Installation directory for config files */
    781 +#define LLVM_ETCDIR "/opt/llvm-android/etc/llvm"
    782 +
    783 +/* Has gcc/MSVC atomic intrinsics */
    784 +#define LLVM_HAS_ATOMICS 1
    785 +
    786 +/* Installation directory for include files */
    787 +#define LLVM_INCLUDEDIR "/opt/llvm-android/include"
    788 +
    789 +/* Installation directory for .info files */
    790 +#define LLVM_INFODIR "/opt/llvm-android/info"
    791 +
    792 +/* Installation directory for libraries */
    793 +#define LLVM_LIBDIR "/opt/llvm-android/lib"
    794 +
    795 +/* Installation directory for man pages */
    796 +#define LLVM_MANDIR "/opt/llvm-android/man"
    797 +
    798 +/* Define to path to circo program if found or 'echo circo' otherwise */
    799 +/* #undef LLVM_PATH_CIRCO */
    800 +
    801 +/* Define to path to dot program if found or 'echo dot' otherwise */
    802 +/* #undef LLVM_PATH_DOT */
    803 +
    804 +/* Define to path to dotty program if found or 'echo dotty' otherwise */
    805 +/* #undef LLVM_PATH_DOTTY */
    806 +
    807 +/* Define to path to fdp program if found or 'echo fdp' otherwise */
    808 +/* #undef LLVM_PATH_FDP */
    809 +
    810 +/* Define to path to Graphviz program if found or 'echo Graphviz' otherwise */
    811 +/* #undef LLVM_PATH_GRAPHVIZ */
    812 +
    813 +/* Define to path to gv program if found or 'echo gv' otherwise */
    814 +/* #undef LLVM_PATH_GV */
    815 +
    816 +/* Define to path to neato program if found or 'echo neato' otherwise */
    817 +/* #undef LLVM_PATH_NEATO */
    818 +
    819 +/* Define to path to twopi program if found or 'echo twopi' otherwise */
    820 +/* #undef LLVM_PATH_TWOPI */
    821 +
    822 +/* Define to path to xdot.py program if found or 'echo xdot.py' otherwise */
    823 +/* #undef LLVM_PATH_XDOT_PY */
    824 +
    825 +/* Installation prefix directory */
    826 +#define LLVM_PREFIX "/opt/llvm-android"
    827 +
    828 +/* Define if we have the Intel JIT API runtime support library */
    829 +#define LLVM_USE_INTEL_JITEVENTS 0
    830 +
    831 +/* Define if we have the oprofile JIT-support library */
    832 +#define LLVM_USE_OPROFILE 0
    833 +
    834 +/* Major version of the LLVM API */
    835 +#define LLVM_VERSION_MAJOR 3
    836 +
    837 +/* Minor version of the LLVM API */
    838 +#define LLVM_VERSION_MINOR 4
    839 +
    840 +/* Define if the OS needs help to load dependent libraries for dlopen(). */
    841 +/* #undef LTDL_DLOPEN_DEPLIBS */
    842 +
    843 +/* Define to the sub-directory in which libtool stores uninstalled libraries.
    844 +   */
    845 +#define LTDL_OBJDIR ".libs/"
    846 +
    847 +/* Define to the name of the environment variable that determines the dynamic
    848 +   library search path. */
    849 +#define LTDL_SHLIBPATH_VAR "LD_LIBRARY_PATH"
    850 +
    851 +/* Define to the extension used for shared libraries, say, ".so". */
    852 +#define LTDL_SHLIB_EXT ".so"
    853 +
    854 +/* Define to the system default library search path. */
    855 +#define LTDL_SYSSEARCHPATH "/lib:/usr/lib:/usr/local/lib:/lib:/usr/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib32:/usr/lib32:/usr/local/lib32:/usr/x86_64-pc-linux-gnu/lib:/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4:/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/32:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32"
    856 +
    857 +/* Define if /dev/zero should be used when mapping RWX memory, or undefine if
    858 +   its not necessary */
    859 +/* #undef NEED_DEV_ZERO_FOR_MMAP */
    860 +
    861 +/* Define if dlsym() requires a leading underscore in symbol names. */
    862 +/* #undef NEED_USCORE */
    863 +
    864 +/* Define to the address where bug reports for this package should be sent. */
    865 +#define PACKAGE_BUGREPORT "http://llvm.org/bugs/"
    866 +
    867 +/* Define to the full name of this package. */
    868 +#define PACKAGE_NAME "LLVM"
    869 +
    870 +/* Define to the full name and version of this package. */
    871 +#define PACKAGE_STRING "LLVM 3.4"
    872 +
    873 +/* Define to the one symbol short name of this package. */
    874 +#define PACKAGE_TARNAME "llvm"
    875 +
    876 +/* Define to the version of this package. */
    877 +#define PACKAGE_VERSION "3.4"
    878 +
    879 +/* Define as the return type of signal handlers (`int' or `void'). */
    880 +#define RETSIGTYPE void
    881 +
    882 +/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
    883 +/* #undef STAT_MACROS_BROKEN */
    884 +
    885 +/* Define to 1 if you have the ANSI C header files. */
    886 +#define STDC_HEADERS 1
    887 +
    888 +/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
    889 +#define TIME_WITH_SYS_TIME 1
    890 +
    891 +/* Define to 1 if your <sys/time.h> declares `struct tm'. */
    892 +/* #undef TM_IN_SYS_TIME */
    893 +
    894 +/* Define if use udis86 library */
    895 +#define USE_UDIS86 0
    896 +
    897 +/* Define to empty if `const' does not conform to ANSI C. */
    898 +/* #undef const */
    899 +
    900 +/* Define to a type to use for `error_t' if it is not otherwise available. */
    901 +/* #undef error_t */
    902 +
    903 +/* Define to `int' if <sys/types.h> does not define. */
    904 +/* #undef pid_t */
    905 +
    906 +/* Define to `unsigned int' if <sys/types.h> does not define. */
    907 +/* #undef size_t */
    908 +
    909 +#include "llvm/Config/llvm-platform-config.h"
    910 +
    911 +#endif
    912 diff --git a/device/include/llvm/Config/llvm-config.h b/device/include/llvm/Config/llvm-config.h
    913 new file mode 100644
    914 index 0000000..637daed
    915 --- /dev/null
    916 +++ b/device/include/llvm/Config/llvm-config.h
    917 @@ -0,0 +1,94 @@
    918 +/* include/llvm/Config/llvm-config.h.  Generated from llvm-config.h.in by configure.  */
    919 +/*===-- llvm/config/llvm-config.h - llvm configure variable -------*- C -*-===*/
    920 +/*                                                                            */
    921 +/*                     The LLVM Compiler Infrastructure                       */
    922 +/*                                                                            */
    923 +/* This file is distributed under the University of Illinois Open Source      */
    924 +/* License. See LICENSE.TXT for details.                                      */
    925 +/*                                                                            */
    926 +/*===----------------------------------------------------------------------===*/
    927 +
    928 +/* This file enumerates all of the llvm variables from configure so that
    929 +   they can be in exported headers and won't override package specific
    930 +   directives.  This is a C file so we can include it in the llvm-c headers.  */
    931 +
    932 +/* To avoid multiple inclusions of these variables when we include the exported
    933 +   headers and config.h, conditionally include these.  */
    934 +/* TODO: This is a bit of a hack.  */
    935 +#ifndef CONFIG_H
    936 +
    937 +/* Installation directory for binary executables */
    938 +#define LLVM_BINDIR "/opt/llvm-android/bin"
    939 +
    940 +/* Time at which LLVM was configured */
    941 +#define LLVM_CONFIGTIME "Tue May  8 14:22:45 CST 2012"
    942 +
    943 +/* Installation directory for data files */
    944 +#define LLVM_DATADIR "/opt/llvm-android/share/llvm"
    945 +
    946 +/* Target triple LLVM will generate code for by default */
    947 +#define LLVM_DEFAULT_TARGET_TRIPLE "i386-unknown-linux"
    948 +
    949 +/* Installation directory for documentation */
    950 +#define LLVM_DOCSDIR "/opt/llvm-android/share/doc/llvm"
    951 +
    952 +/* Define if threads enabled */
    953 +#define LLVM_ENABLE_THREADS 1
    954 +
    955 +/* Installation directory for config files */
    956 +#define LLVM_ETCDIR "/opt/llvm-android/etc/llvm"
    957 +
    958 +/* Has gcc/MSVC atomic intrinsics */
    959 +#define LLVM_HAS_ATOMICS 1
    960 +
    961 +/* Installation directory for include files */
    962 +#define LLVM_INCLUDEDIR "/opt/llvm-android/include"
    963 +
    964 +/* Installation directory for .info files */
    965 +#define LLVM_INFODIR "/opt/llvm-android/info"
    966 +
    967 +/* Installation directory for libraries */
    968 +#define LLVM_LIBDIR "/opt/llvm-android/lib"
    969 +
    970 +/* Installation directory for man pages */
    971 +#define LLVM_MANDIR "/opt/llvm-android/man"
    972 +
    973 +/* Define to path to circo program if found or 'echo circo' otherwise */
    974 +/* #undef LLVM_PATH_CIRCO */
    975 +
    976 +/* Define to path to dot program if found or 'echo dot' otherwise */
    977 +/* #undef LLVM_PATH_DOT */
    978 +
    979 +/* Define to path to dotty program if found or 'echo dotty' otherwise */
    980 +/* #undef LLVM_PATH_DOTTY */
    981 +
    982 +/* Define to path to fdp program if found or 'echo fdp' otherwise */
    983 +/* #undef LLVM_PATH_FDP */
    984 +
    985 +/* Define to path to Graphviz program if found or 'echo Graphviz' otherwise */
    986 +/* #undef LLVM_PATH_GRAPHVIZ */
    987 +
    988 +/* Define to path to gv program if found or 'echo gv' otherwise */
    989 +/* #undef LLVM_PATH_GV */
    990 +
    991 +/* Define to path to neato program if found or 'echo neato' otherwise */
    992 +/* #undef LLVM_PATH_NEATO */
    993 +
    994 +/* Define to path to twopi program if found or 'echo twopi' otherwise */
    995 +/* #undef LLVM_PATH_TWOPI */
    996 +
    997 +/* Define to path to xdot.py program if found or 'echo xdot.py' otherwise */
    998 +/* #undef LLVM_PATH_XDOT_PY */
    999 +
   1000 +/* Installation prefix directory */
   1001 +#define LLVM_PREFIX "/opt/llvm-android"
   1002 +
   1003 +/* Major version of the LLVM API */
   1004 +#define LLVM_VERSION_MAJOR 3
   1005 +
   1006 +/* Minor version of the LLVM API */
   1007 +#define LLVM_VERSION_MINOR 4
   1008 +
   1009 +#include "llvm/Config/llvm-platform-config.h"
   1010 +
   1011 +#endif
   1012 diff --git a/host/include/llvm/Config/AsmParsers.def b/host/include/llvm/Config/AsmParsers.def
   1013 new file mode 100644
   1014 index 0000000..8fd67da
   1015 --- /dev/null
   1016 +++ b/host/include/llvm/Config/AsmParsers.def
   1017 @@ -0,0 +1,32 @@
   1018 +//===- llvm/Config/AsmParsers.def - LLVM Assembly Parsers -------*- C++ -*-===//
   1019 +//
   1020 +//                     The LLVM Compiler Infrastructure
   1021 +//
   1022 +// This file is distributed under the University of Illinois Open Source
   1023 +// License. See LICENSE.TXT for details.
   1024 +//
   1025 +//===----------------------------------------------------------------------===//
   1026 +//
   1027 +// This file enumerates all of the assembly-language parsers
   1028 +// supported by this build of LLVM. Clients of this file should define
   1029 +// the LLVM_ASM_PARSER macro to be a function-like macro with a
   1030 +// single parameter (the name of the target whose assembly can be
   1031 +// generated); including this file will then enumerate all of the
   1032 +// targets with assembly parsers.
   1033 +//
   1034 +// The set of targets supported by LLVM is generated at configuration
   1035 +// time, at which point this header is generated. Do not modify this
   1036 +// header directly.
   1037 +//
   1038 +//===----------------------------------------------------------------------===//
   1039 +
   1040 +#ifndef LLVM_ASM_PARSER
   1041 +#  error Please define the macro LLVM_ASM_PARSER(TargetName)
   1042 +#endif
   1043 +
   1044 +LLVM_ASM_PARSER(ARM)
   1045 +LLVM_ASM_PARSER(Mips)
   1046 +LLVM_ASM_PARSER(X86)
   1047 +LLVM_ASM_PARSER(AArch64)
   1048 +
   1049 +#undef LLVM_ASM_PARSER
   1050 diff --git a/host/include/llvm/Config/AsmPrinters.def b/host/include/llvm/Config/AsmPrinters.def
   1051 new file mode 100644
   1052 index 0000000..07f6adf
   1053 --- /dev/null
   1054 +++ b/host/include/llvm/Config/AsmPrinters.def
   1055 @@ -0,0 +1,32 @@
   1056 +//===- llvm/Config/AsmPrinters.def - LLVM Assembly Printers -----*- C++ -*-===//
   1057 +//
   1058 +//                     The LLVM Compiler Infrastructure
   1059 +//
   1060 +// This file is distributed under the University of Illinois Open Source
   1061 +// License. See LICENSE.TXT for details.
   1062 +//
   1063 +//===----------------------------------------------------------------------===//
   1064 +//
   1065 +// This file enumerates all of the assembly-language printers
   1066 +// supported by this build of LLVM. Clients of this file should define
   1067 +// the LLVM_ASM_PRINTER macro to be a function-like macro with a
   1068 +// single parameter (the name of the target whose assembly can be
   1069 +// generated); including this file will then enumerate all of the
   1070 +// targets with assembly printers.
   1071 +//
   1072 +// The set of targets supported by LLVM is generated at configuration
   1073 +// time, at which point this header is generated. Do not modify this
   1074 +// header directly.
   1075 +//
   1076 +//===----------------------------------------------------------------------===//
   1077 +
   1078 +#ifndef LLVM_ASM_PRINTER
   1079 +#  error Please define the macro LLVM_ASM_PRINTER(TargetName)
   1080 +#endif
   1081 +
   1082 +LLVM_ASM_PRINTER(ARM)
   1083 +LLVM_ASM_PRINTER(Mips)
   1084 +LLVM_ASM_PRINTER(X86)
   1085 +LLVM_ASM_PRINTER(AArch64)
   1086 +
   1087 +#undef LLVM_ASM_PRINTER
   1088 diff --git a/host/include/llvm/Config/Disassemblers.def b/host/include/llvm/Config/Disassemblers.def
   1089 new file mode 100644
   1090 index 0000000..18557af
   1091 --- /dev/null
   1092 +++ b/host/include/llvm/Config/Disassemblers.def
   1093 @@ -0,0 +1,32 @@
   1094 +//===- llvm/Config/Disassemblers.def - LLVM Assembly Parsers ----*- C++ -*-===//
   1095 +//
   1096 +//                     The LLVM Compiler Infrastructure
   1097 +//
   1098 +// This file is distributed under the University of Illinois Open Source
   1099 +// License. See LICENSE.TXT for details.
   1100 +//
   1101 +//===----------------------------------------------------------------------===//
   1102 +//
   1103 +// This file enumerates all of the assembly-language parsers
   1104 +// supported by this build of LLVM. Clients of this file should define
   1105 +// the LLVM_ASM_PARSER macro to be a function-like macro with a
   1106 +// single parameter (the name of the target whose assembly can be
   1107 +// generated); including this file will then enumerate all of the
   1108 +// targets with assembly parsers.
   1109 +//
   1110 +// The set of targets supported by LLVM is generated at configuration
   1111 +// time, at which point this header is generated. Do not modify this
   1112 +// header directly.
   1113 +//
   1114 +//===----------------------------------------------------------------------===//
   1115 +
   1116 +#ifndef LLVM_DISASSEMBLER
   1117 +#  error Please define the macro LLVM_DISASSEMBLER(TargetName)
   1118 +#endif
   1119 +
   1120 +LLVM_DISASSEMBLER(ARM)
   1121 +LLVM_DISASSEMBLER(Mips)
   1122 +LLVM_DISASSEMBLER(X86)
   1123 +LLVM_DISASSEMBLER(AArch64)
   1124 +
   1125 +#undef LLVM_DISASSEMBLER
   1126 diff --git a/host/include/llvm/Config/Targets.def b/host/include/llvm/Config/Targets.def
   1127 new file mode 100644
   1128 index 0000000..2985cf3
   1129 --- /dev/null
   1130 +++ b/host/include/llvm/Config/Targets.def
   1131 @@ -0,0 +1,31 @@
   1132 +/*===- llvm/Config/Targets.def - LLVM Target Architectures ------*- C++ -*-===*\
   1133 +|*                                                                            *|
   1134 +|*                     The LLVM Compiler Infrastructure                       *|
   1135 +|*                                                                            *|
   1136 +|* This file is distributed under the University of Illinois Open Source      *|
   1137 +|* License. See LICENSE.TXT for details.                                      *|
   1138 +|*                                                                            *|
   1139 +|*===----------------------------------------------------------------------===*|
   1140 +|*                                                                            *|
   1141 +|* This file enumerates all of the target architectures supported by          *|
   1142 +|* this build of LLVM. Clients of this file should define the                 *|
   1143 +|* LLVM_TARGET macro to be a function-like macro with a single                *|
   1144 +|* parameter (the name of the target); including this file will then          *|
   1145 +|* enumerate all of the targets.                                              *|
   1146 +|*                                                                            *|
   1147 +|* The set of targets supported by LLVM is generated at configuration         *|
   1148 +|* time, at which point this header is generated. Do not modify this          *|
   1149 +|* header directly.                                                           *|
   1150 +|*                                                                            *|
   1151 +\*===----------------------------------------------------------------------===*/
   1152 +
   1153 +#ifndef LLVM_TARGET
   1154 +#  error Please define the macro LLVM_TARGET(TargetName)
   1155 +#endif
   1156 +
   1157 +LLVM_TARGET(ARM)
   1158 +LLVM_TARGET(Mips)
   1159 +LLVM_TARGET(X86)
   1160 +LLVM_TARGET(AArch64)
   1161 +
   1162 +#undef LLVM_TARGET
   1163 diff --git a/host/include/llvm/Config/config.h b/host/include/llvm/Config/config.h
   1164 new file mode 100644
   1165 index 0000000..8e65910
   1166 --- /dev/null
   1167 +++ b/host/include/llvm/Config/config.h
   1168 @@ -0,0 +1,725 @@
   1169 +/* include/llvm/Config/config.h.  Generated from config.h.in by configure.  */
   1170 +/* include/llvm/Config/config.h.in.  Generated from autoconf/configure.ac by autoheader.  */
   1171 +
   1172 +#ifndef CONFIG_H
   1173 +#define CONFIG_H
   1174 +
   1175 +/* Bug report URL. */
   1176 +#define BUG_REPORT_URL "http://llvm.org/bugs/"
   1177 +
   1178 +/* Relative directory for resource files */
   1179 +#define CLANG_RESOURCE_DIR ""
   1180 +
   1181 +/* Directories clang will search for headers */
   1182 +#define C_INCLUDE_DIRS ""
   1183 +
   1184 +/* Default <path> to all compiler invocations for --sysroot=<path>. */
   1185 +#define DEFAULT_SYSROOT ""
   1186 +
   1187 +/* Define if position independent code is enabled */
   1188 +#define ENABLE_PIC 1
   1189 +
   1190 +/* Define if timestamp information (e.g., __DATE___) is allowed */
   1191 +#define ENABLE_TIMESTAMPS 1
   1192 +
   1193 +/* Directory where gcc is installed. */
   1194 +#define GCC_INSTALL_PREFIX ""
   1195 +
   1196 +/* Define to 1 if you have the `argz_append' function. */
   1197 +/* #undef HAVE_ARGZ_APPEND */
   1198 +
   1199 +/* Define to 1 if you have the `argz_create_sep' function. */
   1200 +/* #undef HAVE_ARGZ_CREATE_SEP */
   1201 +
   1202 +/* Define to 1 if you have the <argz.h> header file. */
   1203 +/* #undef HAVE_ARGZ_H */
   1204 +
   1205 +/* Define to 1 if you have the `argz_insert' function. */
   1206 +/* #undef HAVE_ARGZ_INSERT */
   1207 +
   1208 +/* Define to 1 if you have the `argz_next' function. */
   1209 +/* #undef HAVE_ARGZ_NEXT */
   1210 +
   1211 +/* Define to 1 if you have the `argz_stringify' function. */
   1212 +/* #undef HAVE_ARGZ_STRINGIFY */
   1213 +
   1214 +/* Define to 1 if you have the <assert.h> header file. */
   1215 +#define HAVE_ASSERT_H 1
   1216 +
   1217 +/* Define to 1 if you have the `backtrace' function. */
   1218 +/* #define HAVE_BACKTRACE 1 */ /* Defined by AndroidConfig.h */
   1219 +
   1220 +/* Define to 1 if you have the `bcopy' function. */
   1221 +/* #undef HAVE_BCOPY */
   1222 +
   1223 +/* Define to 1 if you have the `ceilf' function. */
   1224 +#define HAVE_CEILF 1
   1225 +
   1226 +/* Define if the neat program is available */
   1227 +/* #undef HAVE_CIRCO */
   1228 +
   1229 +/* Define to 1 if you have the `closedir' function. */
   1230 +#define HAVE_CLOSEDIR 1
   1231 +
   1232 +/* Define to 1 if you have the <CrashReporterClient.h> header file. */
   1233 +/* #undef HAVE_CRASHREPORTERCLIENT_H */
   1234 +
   1235 +/* Define if __crashreporter_info__ exists. */
   1236 +#define HAVE_CRASHREPORTER_INFO 0
   1237 +
   1238 +/* Define to 1 if you have the <ctype.h> header file. */
   1239 +#define HAVE_CTYPE_H 1
   1240 +
   1241 +/* Define to 1 if you have the <cxxabi.h> header file. */
   1242 +#define HAVE_CXXABI_H 0
   1243 +
   1244 +/* Define to 1 if you have the declaration of `strerror_s', and to 0 if you
   1245 +   don't. */
   1246 +#define HAVE_DECL_STRERROR_S 0
   1247 +
   1248 +/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
   1249 +   */
   1250 +#define HAVE_DIRENT_H 1
   1251 +
   1252 +/* Define if you have the GNU dld library. */
   1253 +/* #undef HAVE_DLD */
   1254 +
   1255 +/* Define to 1 if you have the <dld.h> header file. */
   1256 +/* #undef HAVE_DLD_H */
   1257 +
   1258 +/* Define to 1 if you have the `dlerror' function. */
   1259 +#define HAVE_DLERROR 1
   1260 +
   1261 +/* Define to 1 if you have the <dlfcn.h> header file. */
   1262 +#define HAVE_DLFCN_H 1
   1263 +
   1264 +/* Define if dlopen() is available on this platform. */
   1265 +#define HAVE_DLOPEN 1
   1266 +
   1267 +/* Define to 1 if you have the <dl.h> header file. */
   1268 +/* #undef HAVE_DL_H */
   1269 +
   1270 +/* Define if the dot program is available */
   1271 +/* #undef HAVE_DOT */
   1272 +
   1273 +/* Define if the dotty program is available */
   1274 +/* #undef HAVE_DOTTY */
   1275 +
   1276 +/* Define if you have the _dyld_func_lookup function. */
   1277 +/* #undef HAVE_DYLD */
   1278 +
   1279 +/* Define to 1 if you have the <errno.h> header file. */
   1280 +#define HAVE_ERRNO_H 1
   1281 +
   1282 +/* Define to 1 if the system has the type `error_t'. */
   1283 +#define HAVE_ERROR_T 1
   1284 +
   1285 +/* Define to 1 if you have the <execinfo.h> header file. */
   1286 +#define HAVE_EXECINFO_H 1
   1287 +
   1288 +/* Define to 1 if you have the <fcntl.h> header file. */
   1289 +#define HAVE_FCNTL_H 1
   1290 +
   1291 +/* Define if the neat program is available */
   1292 +/* #undef HAVE_FDP */
   1293 +
   1294 +/* Define to 1 if you have the <fenv.h> header file. */
   1295 +#define HAVE_FENV_H 1
   1296 +
   1297 +/* Define if libffi is available on this platform. */
   1298 +/* #undef HAVE_FFI_CALL */
   1299 +
   1300 +/* Define to 1 if you have the <ffi/ffi.h> header file. */
   1301 +/* #undef HAVE_FFI_FFI_H */
   1302 +
   1303 +/* Define to 1 if you have the <ffi.h> header file. */
   1304 +/* #undef HAVE_FFI_H */
   1305 +
   1306 +/* Set to 1 if the finite function is found in <ieeefp.h> */
   1307 +/* #undef HAVE_FINITE_IN_IEEEFP_H */
   1308 +
   1309 +/* Define to 1 if you have the `floorf' function. */
   1310 +#define HAVE_FLOORF 1
   1311 +
   1312 +/* Define to 1 if you have the `fmodf' function. */
   1313 +#define HAVE_FMODF 1
   1314 +
   1315 +#ifdef __APPLE__
   1316 +/* Define to 1 if you have the `futimes' function. */
   1317 +#define HAVE_FUTIMES 1
   1318 +#else
   1319 +/* Define to 1 if you have the `futimens' function. */
   1320 +#define HAVE_FUTIMENS 1
   1321 +#endif  // __APPLE__
   1322 +
   1323 +/* Define to 1 if you have the `getcwd' function. */
   1324 +#define HAVE_GETCWD 1
   1325 +
   1326 +/* Define to 1 if you have the `getpagesize' function. */
   1327 +#define HAVE_GETPAGESIZE 1
   1328 +
   1329 +/* Define to 1 if you have the `getrlimit' function. */
   1330 +#define HAVE_GETRLIMIT 1
   1331 +
   1332 +/* Define to 1 if you have the `getrusage' function. */
   1333 +#define HAVE_GETRUSAGE 1
   1334 +
   1335 +/* Define to 1 if you have the `gettimeofday' function. */
   1336 +#define HAVE_GETTIMEOFDAY 1
   1337 +
   1338 +/* Define if the Graphviz program is available */
   1339 +/* #undef HAVE_GRAPHVIZ */
   1340 +
   1341 +/* Define if the gv program is available */
   1342 +/* #undef HAVE_GV */
   1343 +
   1344 +/* Define to 1 if you have the `index' function. */
   1345 +/* #undef HAVE_INDEX */
   1346 +
   1347 +/* Define to 1 if the system has the type `int64_t'. */
   1348 +#define HAVE_INT64_T 1
   1349 +
   1350 +/* Define to 1 if you have the <inttypes.h> header file. */
   1351 +#define HAVE_INTTYPES_H 1
   1352 +
   1353 +/* Define to 1 if you have the `isatty' function. */
   1354 +#define HAVE_ISATTY 1
   1355 +
   1356 +/* Set to 1 if the isinf function is found in <cmath> */
   1357 +#define HAVE_ISINF_IN_CMATH 1
   1358 +
   1359 +/* Set to 1 if the isinf function is found in <math.h> */
   1360 +#define HAVE_ISINF_IN_MATH_H 1
   1361 +
   1362 +/* Set to 1 if the isnan function is found in <cmath> */
   1363 +#define HAVE_ISNAN_IN_CMATH 1
   1364 +
   1365 +/* Set to 1 if the isnan function is found in <math.h> */
   1366 +#define HAVE_ISNAN_IN_MATH_H 1
   1367 +
   1368 +/* Define if you have the libdl library or equivalent. */
   1369 +#define HAVE_LIBDL 1
   1370 +
   1371 +/* Define to 1 if you have the `imagehlp' library (-limagehlp). */
   1372 +/* #undef HAVE_LIBIMAGEHLP */
   1373 +
   1374 +/* Define to 1 if you have the `m' library (-lm). */
   1375 +#define HAVE_LIBM 1
   1376 +
   1377 +/* Define to 1 if you have the `psapi' library (-lpsapi). */
   1378 +/* #undef HAVE_LIBPSAPI */
   1379 +
   1380 +/* Define to 1 if you have the `pthread' library (-lpthread). */
   1381 +#define HAVE_LIBPTHREAD 1
   1382 +
   1383 +/* Define to 1 if you have the `shell32' library (-lshell32). */
   1384 +#define HAVE_LIBSHELL32 1
   1385 +
   1386 +/* Define to 1 if you have the `udis86' library (-ludis86). */
   1387 +/* #undef HAVE_LIBUDIS86 */
   1388 +
   1389 +/* Define to 1 if you have the <limits.h> header file. */
   1390 +#define HAVE_LIMITS_H 1
   1391 +
   1392 +/* Define if you can use -Wl,-export-dynamic. */
   1393 +#define HAVE_LINK_EXPORT_DYNAMIC 1
   1394 +
   1395 +/* Define to 1 if you have the <link.h> header file. */
   1396 +#define HAVE_LINK_H 1
   1397 +
   1398 +/* Define if you can use -Wl,-R. to pass -R. to the linker, in order to add
   1399 +   the current directory to the dynamic linker search path. */
   1400 +#define HAVE_LINK_R 1
   1401 +
   1402 +/* Define to 1 if you have the `longjmp' function. */
   1403 +#define HAVE_LONGJMP 1
   1404 +
   1405 +/* Define to 1 if you have the <mach/mach.h> header file. */
   1406 +/* #undef HAVE_MACH_MACH_H */
   1407 +
   1408 +/* Define to 1 if you have the <mach-o/dyld.h> header file. */
   1409 +/* #undef HAVE_MACH_O_DYLD_H */
   1410 +
   1411 +/* Define if mallinfo() is available on this platform. */
   1412 +#if !defined(__APPLE__)
   1413 +#define HAVE_MALLINFO 1
   1414 +#else
   1415 +/* #undef HAVE_MALLINFO */
   1416 +#endif
   1417 +
   1418 +/* Define to 1 if you have the <malloc.h> header file. */
   1419 +/* #define HAVE_MALLOC_H 1 */ /* Defined by AndroidConfig.h */
   1420 +
   1421 +/* Define to 1 if you have the <malloc/malloc.h> header file. */
   1422 +/* #undef HAVE_MALLOC_MALLOC_H */
   1423 +
   1424 +/* Define to 1 if you have the `malloc_zone_statistics' function. */
   1425 +/* #undef HAVE_MALLOC_ZONE_STATISTICS */
   1426 +
   1427 +/* Define to 1 if you have the `memcpy' function. */
   1428 +#define HAVE_MEMCPY 1
   1429 +
   1430 +/* Define to 1 if you have the `memmove' function. */
   1431 +#define HAVE_MEMMOVE 1
   1432 +
   1433 +/* Define to 1 if you have the <memory.h> header file. */
   1434 +#define HAVE_MEMORY_H 1
   1435 +
   1436 +/* Define to 1 if you have the `mkdtemp' function. */
   1437 +#define HAVE_MKDTEMP 1
   1438 +
   1439 +/* Define to 1 if you have the `mkstemp' function. */
   1440 +#define HAVE_MKSTEMP 1
   1441 +
   1442 +/* Define to 1 if you have the `mktemp' function. */
   1443 +#define HAVE_MKTEMP 1
   1444 +
   1445 +/* Define to 1 if you have a working `mmap' system call. */
   1446 +#define HAVE_MMAP 1
   1447 +
   1448 +/* Define if mmap() uses MAP_ANONYMOUS to map anonymous pages, or undefine if
   1449 +   it uses MAP_ANON */
   1450 +#if !defined(__APPLE__)
   1451 +#define HAVE_MMAP_ANONYMOUS
   1452 +#else
   1453 +/* #undef HAVE_MMAP_ANONYMOUS */
   1454 +#endif
   1455 +
   1456 +/* Define if mmap() can map files into memory */
   1457 +#define HAVE_MMAP_FILE
   1458 +
   1459 +/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
   1460 +/* #undef HAVE_NDIR_H */
   1461 +
   1462 +/* Define to 1 if you have the `nearbyintf' function. */
   1463 +#define HAVE_NEARBYINTF 1
   1464 +
   1465 +/* Define if the neat program is available */
   1466 +/* #undef HAVE_NEATO */
   1467 +
   1468 +/* Define to 1 if you have the `opendir' function. */
   1469 +#define HAVE_OPENDIR 1
   1470 +
   1471 +/* Define to 1 if you have the `posix_spawn' function. */
   1472 +#define HAVE_POSIX_SPAWN 1
   1473 +
   1474 +/* Define to 1 if you have the `powf' function. */
   1475 +#define HAVE_POWF 1
   1476 +
   1477 +/* Define to 1 if you have the `pread' function. */
   1478 +#if !defined(_WIN32) && !defined(_WIN64)
   1479 +#define HAVE_PREAD 1
   1480 +#endif
   1481 +
   1482 +/* Define if libtool can extract symbol lists from object files. */
   1483 +#define HAVE_PRELOADED_SYMBOLS 1
   1484 +
   1485 +/* Define to have the %a format string */
   1486 +#define HAVE_PRINTF_A 1
   1487 +
   1488 +#if !defined(_WIN32) && !defined(_WIN64)
   1489 +
   1490 +/* Have pthread_getspecific */
   1491 +#define HAVE_PTHREAD_GETSPECIFIC 1
   1492 +
   1493 +/* Define to 1 if you have the <pthread.h> header file. */
   1494 +#define HAVE_PTHREAD_H 1
   1495 +
   1496 +/* Have pthread_mutex_lock */
   1497 +#define HAVE_PTHREAD_MUTEX_LOCK 1
   1498 +
   1499 +/* Have pthread_rwlock_init */
   1500 +#define HAVE_PTHREAD_RWLOCK_INIT 1
   1501 +
   1502 +#endif /* !defined(_WIN32) && !defined(_WIN64) */
   1503 +
   1504 +/* Define to 1 if srand48/lrand48/drand48 exist in <stdlib.h> */
   1505 +#define HAVE_RAND48 1
   1506 +
   1507 +/* Define to 1 if you have the `readdir' function. */
   1508 +#define HAVE_READDIR 1
   1509 +
   1510 +/* Define to 1 if you have the `realpath' function. */
   1511 +#define HAVE_REALPATH 1
   1512 +
   1513 +/* Define to 1 if you have the `rindex' function. */
   1514 +/* #undef HAVE_RINDEX */
   1515 +
   1516 +/* Define to 1 if you have the `rintf' function. */
   1517 +#define HAVE_RINTF 1
   1518 +
   1519 +/* Define to 1 if you have the `round' function. */
   1520 +#define HAVE_ROUND 1
   1521 +
   1522 +/* Define to 1 if you have the `roundf' function. */
   1523 +#define HAVE_ROUNDF 1
   1524 +
   1525 +/* Define to 1 if you have the `sbrk' function. */
   1526 +#define HAVE_SBRK 1
   1527 +
   1528 +/* Define to 1 if you have the `setenv' function. */
   1529 +#define HAVE_SETENV 1
   1530 +
   1531 +/* Define to 1 if you have the `setjmp' function. */
   1532 +#define HAVE_SETJMP 1
   1533 +
   1534 +/* Define to 1 if you have the <setjmp.h> header file. */
   1535 +#define HAVE_SETJMP_H 1
   1536 +
   1537 +/* Define to 1 if you have the `setrlimit' function. */
   1538 +#define HAVE_SETRLIMIT 1
   1539 +
   1540 +/* Define if you have the shl_load function. */
   1541 +/* #undef HAVE_SHL_LOAD */
   1542 +
   1543 +/* Define to 1 if you have the `siglongjmp' function. */
   1544 +#define HAVE_SIGLONGJMP 1
   1545 +
   1546 +/* Define to 1 if you have the <signal.h> header file. */
   1547 +#define HAVE_SIGNAL_H 1
   1548 +
   1549 +/* Define to 1 if you have the `sigsetjmp' function. */
   1550 +/* #undef HAVE_SIGSETJMP */
   1551 +
   1552 +/* Define to 1 if you have the <stdint.h> header file. */
   1553 +#define HAVE_STDINT_H 1
   1554 +
   1555 +/* Define to 1 if you have the <stdio.h> header file. */
   1556 +#define HAVE_STDIO_H 1
   1557 +
   1558 +/* Define to 1 if you have the <stdlib.h> header file. */
   1559 +#define HAVE_STDLIB_H 1
   1560 +
   1561 +/* Set to 1 if the std::isinf function is found in <cmath> */
   1562 +#define HAVE_STD_ISINF_IN_CMATH 1
   1563 +
   1564 +/* Set to 1 if the std::isnan function is found in <cmath> */
   1565 +#define HAVE_STD_ISNAN_IN_CMATH 1
   1566 +
   1567 +/* Define to 1 if you have the `strchr' function. */
   1568 +#define HAVE_STRCHR 1
   1569 +
   1570 +/* Define to 1 if you have the `strcmp' function. */
   1571 +#define HAVE_STRCMP 1
   1572 +
   1573 +/* Define to 1 if you have the `strdup' function. */
   1574 +#define HAVE_STRDUP 1
   1575 +
   1576 +/* Define to 1 if you have the `strerror' function. */
   1577 +#define HAVE_STRERROR 1
   1578 +
   1579 +/* Define to 1 if you have the `strerror_r' function. */
   1580 +#ifndef USE_MINGW
   1581 +#define HAVE_STRERROR_R 1
   1582 +#endif
   1583 +
   1584 +/* Define to 1 if you have the <strings.h> header file. */
   1585 +#define HAVE_STRINGS_H 1
   1586 +
   1587 +/* Define to 1 if you have the <string.h> header file. */
   1588 +#define HAVE_STRING_H 1
   1589 +
   1590 +/* Define to 1 if you have the `strrchr' function. */
   1591 +#define HAVE_STRRCHR 1
   1592 +
   1593 +/* Define to 1 if you have the `strtof' function. */
   1594 +#define HAVE_STRTOF 1
   1595 +
   1596 +/* Define to 1 if you have the `strtoll' function. */
   1597 +#define HAVE_STRTOLL 1
   1598 +
   1599 +/* Define to 1 if you have the `strtoq' function. */
   1600 +#define HAVE_STRTOQ 1
   1601 +
   1602 +/* Define to 1 if you have the `sysconf' function. */
   1603 +#define HAVE_SYSCONF 1
   1604 +
   1605 +/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
   1606 +   */
   1607 +/* #undef HAVE_SYS_DIR_H */
   1608 +
   1609 +/* Define to 1 if you have the <sys/dl.h> header file. */
   1610 +/* #undef HAVE_SYS_DL_H */
   1611 +
   1612 +/* Define to 1 if you have the <sys/ioctl.h> header file. */
   1613 +#define HAVE_SYS_IOCTL_H 1
   1614 +
   1615 +/* Define to 1 if you have the <sys/mman.h> header file. */
   1616 +#define HAVE_SYS_MMAN_H 1
   1617 +
   1618 +/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
   1619 +   */
   1620 +/* #undef HAVE_SYS_NDIR_H */
   1621 +
   1622 +/* Define to 1 if you have the <sys/param.h> header file. */
   1623 +#define HAVE_SYS_PARAM_H 1
   1624 +
   1625 +/* Define to 1 if you have the <sys/resource.h> header file. */
   1626 +#define HAVE_SYS_RESOURCE_H 1
   1627 +
   1628 +/* Define to 1 if you have the <sys/stat.h> header file. */
   1629 +#define HAVE_SYS_STAT_H 1
   1630 +
   1631 +/* Define to 1 if you have the <sys/time.h> header file. */
   1632 +#define HAVE_SYS_TIME_H 1
   1633 +
   1634 +/* Define to 1 if you have the <sys/types.h> header file. */
   1635 +#define HAVE_SYS_TYPES_H 1
   1636 +
   1637 +/* Define to 1 if you have the <sys/uio.h> header file. */
   1638 +/* #define HAVE_SYS_UIO_H 1 */
   1639 +
   1640 +/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
   1641 +#define HAVE_SYS_WAIT_H 1
   1642 +
   1643 +/* Define to 1 if you have the <termios.h> header file. */
   1644 +#define HAVE_TERMIOS_H 1
   1645 +
   1646 +/* Define if the neat program is available */
   1647 +/* #undef HAVE_TWOPI */
   1648 +
   1649 +/* Define to 1 if the system has the type `uint64_t'. */
   1650 +#define HAVE_UINT64_T 1
   1651 +
   1652 +/* Define to 1 if you have the <unistd.h> header file. */
   1653 +#define HAVE_UNISTD_H 1
   1654 +
   1655 +/* Define to 1 if you have the <utime.h> header file. */
   1656 +#define HAVE_UTIME_H 1
   1657 +
   1658 +/* Define to 1 if the system has the type `u_int64_t'. */
   1659 +/* #undef HAVE_U_INT64_T */
   1660 +
   1661 +/* Define to 1 if you have the <valgrind/valgrind.h> header file. */
   1662 +/* #undef HAVE_VALGRIND_VALGRIND_H */
   1663 +
   1664 +#if defined(_WIN32) || defined(_WIN64)
   1665 +/* Define to 1 if you have the <windows.h> header file. */
   1666 +#define HAVE_WINDOWS_H 1
   1667 +
   1668 +/* Define to 1 if you have the `writev' function. */
   1669 +/* #undef HAVE_WRITEV */
   1670 +
   1671 +#else
   1672 +/* Define to 1 if you have the <windows.h> header file. */
   1673 +/* #undef HAVE_WINDOWS_H */
   1674 +
   1675 +/* Define to 1 if you have the `writev' function. */
   1676 +#define HAVE_WRITEV 1
   1677 +#endif
   1678 +
   1679 +/* Define if the xdot.py program is available */
   1680 +/* #undef HAVE_XDOT_PY */
   1681 +
   1682 +/* Have host's _alloca */
   1683 +/* #undef HAVE__ALLOCA */
   1684 +
   1685 +/* Have host's __alloca */
   1686 +/* #undef HAVE___ALLOCA */
   1687 +
   1688 +/* Have host's __ashldi3 */
   1689 +/* #undef HAVE___ASHLDI3 */
   1690 +
   1691 +/* Have host's __ashrdi3 */
   1692 +/* #undef HAVE___ASHRDI3 */
   1693 +
   1694 +/* Have host's __chkstk */
   1695 +/* #undef HAVE___CHKSTK */
   1696 +
   1697 +/* Have host's __cmpdi2 */
   1698 +/* #undef HAVE___CMPDI2 */
   1699 +
   1700 +/* Have host's __divdi3 */
   1701 +/* #undef HAVE___DIVDI3 */
   1702 +
   1703 +/* Define to 1 if you have the `__dso_handle' function. */
   1704 +/* #undef HAVE___DSO_HANDLE */
   1705 +
   1706 +/* Have host's __fixdfdi */
   1707 +/* #undef HAVE___FIXDFDI */
   1708 +
   1709 +/* Have host's __fixsfdi */
   1710 +/* #undef HAVE___FIXSFDI */
   1711 +
   1712 +/* Have host's __floatdidf */
   1713 +/* #undef HAVE___FLOATDIDF */
   1714 +
   1715 +/* Have host's __lshrdi3 */
   1716 +/* #undef HAVE___LSHRDI3 */
   1717 +
   1718 +/* Have host's __main */
   1719 +/* #undef HAVE___MAIN */
   1720 +
   1721 +/* Have host's __moddi3 */
   1722 +/* #undef HAVE___MODDI3 */
   1723 +
   1724 +/* Have host's __udivdi3 */
   1725 +/* #undef HAVE___UDIVDI3 */
   1726 +
   1727 +/* Have host's __umoddi3 */
   1728 +/* #undef HAVE___UMODDI3 */
   1729 +
   1730 +/* Have host's ___chkstk */
   1731 +/* #undef HAVE____CHKSTK */
   1732 +
   1733 +/* Linker version detected at compile time. */
   1734 +#define HOST_LINK_VERSION "2.20.1"
   1735 +
   1736 +/* Installation directory for binary executables */
   1737 +#define LLVM_BINDIR "/opt/llvm-android/bin"
   1738 +
   1739 +/* Time at which LLVM was configured */
   1740 +#define LLVM_CONFIGTIME "Tue May  8 14:22:45 CST 2012"
   1741 +
   1742 +/* Installation directory for data files */
   1743 +#define LLVM_DATADIR "/opt/llvm-android/share/llvm"
   1744 +
   1745 +/* Target triple LLVM will generate code for by default */
   1746 +#define LLVM_DEFAULT_TARGET_TRIPLE "i386-unknown-linux"
   1747 +
   1748 +/* Installation directory for documentation */
   1749 +#define LLVM_DOCSDIR "/opt/llvm-android/share/doc/llvm"
   1750 +
   1751 +/* Define if threads enabled */
   1752 +#define LLVM_ENABLE_THREADS 1
   1753 +
   1754 +/* Installation directory for config files */
   1755 +#define LLVM_ETCDIR "/opt/llvm-android/etc/llvm"
   1756 +
   1757 +#if !defined(_WIN32) && !defined(_WIN64)
   1758 +
   1759 +/* Has gcc/MSVC atomic intrinsics */
   1760 +#define LLVM_HAS_ATOMICS 1
   1761 +
   1762 +#else
   1763 +
   1764 +#define LLVM_HAS_ATOMICS 0
   1765 +
   1766 +#endif /* !defined(_WIN32) && !defined(_WIN64) */
   1767 +
   1768 +/* Installation directory for include files */
   1769 +#define LLVM_INCLUDEDIR "/opt/llvm-android/include"
   1770 +
   1771 +/* Installation directory for .info files */
   1772 +#define LLVM_INFODIR "/opt/llvm-android/info"
   1773 +
   1774 +/* Installation directory for libraries */
   1775 +#define LLVM_LIBDIR "/opt/llvm-android/lib"
   1776 +
   1777 +/* Installation directory for man pages */
   1778 +#define LLVM_MANDIR "/opt/llvm-android/man"
   1779 +
   1780 +/* Define to path to circo program if found or 'echo circo' otherwise */
   1781 +/* #undef LLVM_PATH_CIRCO */
   1782 +
   1783 +/* Define to path to dot program if found or 'echo dot' otherwise */
   1784 +/* #undef LLVM_PATH_DOT */
   1785 +
   1786 +/* Define to path to dotty program if found or 'echo dotty' otherwise */
   1787 +/* #undef LLVM_PATH_DOTTY */
   1788 +
   1789 +/* Define to path to fdp program if found or 'echo fdp' otherwise */
   1790 +/* #undef LLVM_PATH_FDP */
   1791 +
   1792 +/* Define to path to Graphviz program if found or 'echo Graphviz' otherwise */
   1793 +/* #undef LLVM_PATH_GRAPHVIZ */
   1794 +
   1795 +/* Define to path to gv program if found or 'echo gv' otherwise */
   1796 +/* #undef LLVM_PATH_GV */
   1797 +
   1798 +/* Define to path to neato program if found or 'echo neato' otherwise */
   1799 +/* #undef LLVM_PATH_NEATO */
   1800 +
   1801 +/* Define to path to twopi program if found or 'echo twopi' otherwise */
   1802 +/* #undef LLVM_PATH_TWOPI */
   1803 +
   1804 +/* Define to path to xdot.py program if found or 'echo xdot.py' otherwise */
   1805 +/* #undef LLVM_PATH_XDOT_PY */
   1806 +
   1807 +/* Installation prefix directory */
   1808 +#define LLVM_PREFIX "/opt/llvm-android"
   1809 +
   1810 +/* Define if we have the Intel JIT API runtime support library */
   1811 +#define LLVM_USE_INTEL_JITEVENTS 0
   1812 +
   1813 +/* Define if we have the oprofile JIT-support library */
   1814 +#define LLVM_USE_OPROFILE 0
   1815 +
   1816 +/* Major version of the LLVM API */
   1817 +#define LLVM_VERSION_MAJOR 3
   1818 +
   1819 +/* Minor version of the LLVM API */
   1820 +#define LLVM_VERSION_MINOR 5
   1821 +
   1822 +/* Define if the OS needs help to load dependent libraries for dlopen(). */
   1823 +/* #undef LTDL_DLOPEN_DEPLIBS */
   1824 +
   1825 +/* Define to the sub-directory in which libtool stores uninstalled libraries.
   1826 +   */
   1827 +#define LTDL_OBJDIR ".libs/"
   1828 +
   1829 +/* Define to the name of the environment variable that determines the dynamic
   1830 +   library search path. */
   1831 +#define LTDL_SHLIBPATH_VAR "LD_LIBRARY_PATH"
   1832 +
   1833 +/* Define to the extension used for shared libraries, say, ".so". */
   1834 +#define LTDL_SHLIB_EXT ".so"
   1835 +
   1836 +/* Define to the system default library search path. */
   1837 +#define LTDL_SYSSEARCHPATH "/lib:/usr/lib:/usr/local/lib:/lib:/usr/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib32:/usr/lib32:/usr/local/lib32:/usr/x86_64-pc-linux-gnu/lib:/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4:/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/32:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2:/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/32"
   1838 +
   1839 +/* Define if /dev/zero should be used when mapping RWX memory, or undefine if
   1840 +   its not necessary */
   1841 +/* #undef NEED_DEV_ZERO_FOR_MMAP */
   1842 +
   1843 +/* Define if dlsym() requires a leading underscore in symbol names. */
   1844 +/* #undef NEED_USCORE */
   1845 +
   1846 +/* Define to the address where bug reports for this package should be sent. */
   1847 +#define PACKAGE_BUGREPORT "http://llvm.org/bugs/"
   1848 +
   1849 +/* Define to the full name of this package. */
   1850 +#define PACKAGE_NAME "LLVM"
   1851 +
   1852 +/* Define to the full name and version of this package. */
   1853 +#define PACKAGE_STRING "LLVM 3.4"
   1854 +
   1855 +/* Define to the one symbol short name of this package. */
   1856 +#define PACKAGE_TARNAME "llvm"
   1857 +
   1858 +/* Define to the version of this package. */
   1859 +#define PACKAGE_VERSION "3.4"
   1860 +
   1861 +/* Define as the return type of signal handlers (`int' or `void'). */
   1862 +#define RETSIGTYPE void
   1863 +
   1864 +/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
   1865 +/* #undef STAT_MACROS_BROKEN */
   1866 +
   1867 +/* Define to 1 if you have the ANSI C header files. */
   1868 +#define STDC_HEADERS 1
   1869 +
   1870 +/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
   1871 +#define TIME_WITH_SYS_TIME 1
   1872 +
   1873 +/* Define to 1 if your <sys/time.h> declares `struct tm'. */
   1874 +/* #undef TM_IN_SYS_TIME */
   1875 +
   1876 +/* Define if use udis86 library */
   1877 +#define USE_UDIS86 0
   1878 +
   1879 +/* Define to empty if `const' does not conform to ANSI C. */
   1880 +/* #undef const */
   1881 +
   1882 +/* Define to a type to use for `error_t' if it is not otherwise available. */
   1883 +/* #undef error_t */
   1884 +
   1885 +/* Define to `int' if <sys/types.h> does not define. */
   1886 +/* #undef pid_t */
   1887 +
   1888 +/* Define to `unsigned int' if <sys/types.h> does not define. */
   1889 +/* #undef size_t */
   1890 +
   1891 +#include "llvm/Config/llvm-platform-config.h"
   1892 +
   1893 +#endif
   1894 diff --git a/host/include/llvm/Config/llvm-config.h b/host/include/llvm/Config/llvm-config.h
   1895 new file mode 100644
   1896 index 0000000..95f85fe
   1897 --- /dev/null
   1898 +++ b/host/include/llvm/Config/llvm-config.h
   1899 @@ -0,0 +1,102 @@
   1900 +/* include/llvm/Config/llvm-config.h.  Generated from llvm-config.h.in by configure.  */
   1901 +/*===-- llvm/config/llvm-config.h - llvm configure variable -------*- C -*-===*/
   1902 +/*                                                                            */
   1903 +/*                     The LLVM Compiler Infrastructure                       */
   1904 +/*                                                                            */
   1905 +/* This file is distributed under the University of Illinois Open Source      */
   1906 +/* License. See LICENSE.TXT for details.                                      */
   1907 +/*                                                                            */
   1908 +/*===----------------------------------------------------------------------===*/
   1909 +
   1910 +/* This file enumerates all of the llvm variables from configure so that
   1911 +   they can be in exported headers and won't override package specific
   1912 +   directives.  This is a C file so we can include it in the llvm-c headers.  */
   1913 +
   1914 +/* To avoid multiple inclusions of these variables when we include the exported
   1915 +   headers and config.h, conditionally include these.  */
   1916 +/* TODO: This is a bit of a hack.  */
   1917 +#ifndef CONFIG_H
   1918 +
   1919 +/* Installation directory for binary executables */
   1920 +#define LLVM_BINDIR "/opt/llvm-android/bin"
   1921 +
   1922 +/* Time at which LLVM was configured */
   1923 +#define LLVM_CONFIGTIME "Tue May  8 14:22:45 CST 2012"
   1924 +
   1925 +/* Installation directory for data files */
   1926 +#define LLVM_DATADIR "/opt/llvm-android/share/llvm"
   1927 +
   1928 +/* Target triple LLVM will generate code for by default */
   1929 +#define LLVM_DEFAULT_TARGET_TRIPLE "i386-unknown-linux"
   1930 +
   1931 +/* Installation directory for documentation */
   1932 +#define LLVM_DOCSDIR "/opt/llvm-android/share/doc/llvm"
   1933 +
   1934 +/* Define if threads enabled */
   1935 +#define LLVM_ENABLE_THREADS 1
   1936 +
   1937 +/* Installation directory for config files */
   1938 +#define LLVM_ETCDIR "/opt/llvm-android/etc/llvm"
   1939 +
   1940 +#if !defined(_WIN32) && !defined(_WIN64)
   1941 +
   1942 +/* Has gcc/MSVC atomic intrinsics */
   1943 +#define LLVM_HAS_ATOMICS 1
   1944 +
   1945 +#else
   1946 +
   1947 +#define LLVM_HAS_ATOMICS 0
   1948 +
   1949 +#endif /* !defined(_WIN32) && !defined(_WIN64) */
   1950 +
   1951 +/* Installation directory for include files */
   1952 +#define LLVM_INCLUDEDIR "/opt/llvm-android/include"
   1953 +
   1954 +/* Installation directory for .info files */
   1955 +#define LLVM_INFODIR "/opt/llvm-android/info"
   1956 +
   1957 +/* Installation directory for libraries */
   1958 +#define LLVM_LIBDIR "/opt/llvm-android/lib"
   1959 +
   1960 +/* Installation directory for man pages */
   1961 +#define LLVM_MANDIR "/opt/llvm-android/man"
   1962 +
   1963 +/* Define to path to circo program if found or 'echo circo' otherwise */
   1964 +/* #undef LLVM_PATH_CIRCO */
   1965 +
   1966 +/* Define to path to dot program if found or 'echo dot' otherwise */
   1967 +/* #undef LLVM_PATH_DOT */
   1968 +
   1969 +/* Define to path to dotty program if found or 'echo dotty' otherwise */
   1970 +/* #undef LLVM_PATH_DOTTY */
   1971 +
   1972 +/* Define to path to fdp program if found or 'echo fdp' otherwise */
   1973 +/* #undef LLVM_PATH_FDP */
   1974 +
   1975 +/* Define to path to Graphviz program if found or 'echo Graphviz' otherwise */
   1976 +/* #undef LLVM_PATH_GRAPHVIZ */
   1977 +
   1978 +/* Define to path to gv program if found or 'echo gv' otherwise */
   1979 +/* #undef LLVM_PATH_GV */
   1980 +
   1981 +/* Define to path to neato program if found or 'echo neato' otherwise */
   1982 +/* #undef LLVM_PATH_NEATO */
   1983 +
   1984 +/* Define to path to twopi program if found or 'echo twopi' otherwise */
   1985 +/* #undef LLVM_PATH_TWOPI */
   1986 +
   1987 +/* Define to path to xdot.py program if found or 'echo xdot.py' otherwise */
   1988 +/* #undef LLVM_PATH_XDOT_PY */
   1989 +
   1990 +/* Installation prefix directory */
   1991 +#define LLVM_PREFIX "/opt/llvm-android"
   1992 +
   1993 +/* Major version of the LLVM API */
   1994 +#define LLVM_VERSION_MAJOR 3
   1995 +
   1996 +/* Minor version of the LLVM API */
   1997 +#define LLVM_VERSION_MINOR 5
   1998 +
   1999 +#include "llvm/Config/llvm-platform-config.h"
   2000 +
   2001 +#endif
   2002 diff --git a/include/llvm/Config/llvm-platform-config.h b/include/llvm/Config/llvm-platform-config.h
   2003 new file mode 100644
   2004 index 0000000..cd005be
   2005 --- /dev/null
   2006 +++ b/include/llvm/Config/llvm-platform-config.h
   2007 @@ -0,0 +1,160 @@
   2008 +#ifndef LLVM_NATIVE_CONFIG_H
   2009 +
   2010 +/*===-- llvm/config/llvm-native-config.h --------------------------*- C -*-===*/
   2011 +/*                                                                            */
   2012 +/*                     The LLVM Compiler Infrastructure                       */
   2013 +/*                                                                            */
   2014 +/* This file is distributed under the University of Illinois Open Source      */
   2015 +/* License. See LICENSE.TXT for details.                                      */
   2016 +/*                                                                            */
   2017 +/*===----------------------------------------------------------------------===*/
   2018 +
   2019 +#if defined(__i386__) || defined(__x86_64__)
   2020 +
   2021 +/* LLVM architecture name for the native architecture, if available */
   2022 +#define LLVM_NATIVE_ARCH X86
   2023 +
   2024 +/* Host triple LLVM will be executed on */
   2025 +#define LLVM_HOST_TRIPLE "i686-unknown-linux-gnu"
   2026 +
   2027 +/* LLVM name for the native AsmParser init function, if available */
   2028 +#define LLVM_NATIVE_ASMPARSER LLVMInitializeX86AsmParser
   2029 +
   2030 +/* LLVM name for the native AsmPrinter init function, if available */
   2031 +#define LLVM_NATIVE_ASMPRINTER LLVMInitializeX86AsmPrinter
   2032 +
   2033 +/* LLVM name for the native Disassembler init function, if available */
   2034 +#define LLVM_NATIVE_DISASSEMBLER LLVMInitializeX86Disassembler
   2035 +
   2036 +/* LLVM name for the native Target init function, if available */
   2037 +#define LLVM_NATIVE_TARGET LLVMInitializeX86Target
   2038 +
   2039 +/* LLVM name for the native TargetInfo init function, if available */
   2040 +#define LLVM_NATIVE_TARGETINFO LLVMInitializeX86TargetInfo
   2041 +
   2042 +/* LLVM name for the native target MC init function, if available */
   2043 +#define LLVM_NATIVE_TARGETMC LLVMInitializeX86TargetMC
   2044 +
   2045 +
   2046 +#elif defined(__arm__)
   2047 +
   2048 +/* LLVM architecture name for the native architecture, if available */
   2049 +#define LLVM_NATIVE_ARCH ARM
   2050 +
   2051 +/* Host triple LLVM will be executed on */
   2052 +#define LLVM_HOST_TRIPLE "arm-unknown-linux-gnu"
   2053 +
   2054 +/* LLVM name for the native AsmParser init function, if available */
   2055 +#define LLVM_NATIVE_ASMPARSER LLVMInitializeARMAsmParser
   2056 +
   2057 +/* LLVM name for the native AsmPrinter init function, if available */
   2058 +#define LLVM_NATIVE_ASMPRINTER LLVMInitializeARMAsmPrinter
   2059 +
   2060 +/* LLVM name for the native Disassembler init function, if available */
   2061 +#define LLVM_NATIVE_DISASSEMBLER LLVMInitializeARMDisassembler
   2062 +
   2063 +/* LLVM name for the native Target init function, if available */
   2064 +#define LLVM_NATIVE_TARGET LLVMInitializeARMTarget
   2065 +
   2066 +/* LLVM name for the native TargetInfo init function, if available */
   2067 +#define LLVM_NATIVE_TARGETINFO LLVMInitializeARMTargetInfo
   2068 +
   2069 +/* LLVM name for the native target MC init function, if available */
   2070 +#define LLVM_NATIVE_TARGETMC LLVMInitializeARMTargetMC
   2071 +
   2072 +
   2073 +#elif defined(__mips__)
   2074 +
   2075 +/* LLVM architecture name for the native architecture, if available */
   2076 +#define LLVM_NATIVE_ARCH Mips
   2077 +
   2078 +/* Host triple LLVM will be executed on */
   2079 +#define LLVM_HOST_TRIPLE "mipsel-unknown-linux-gnu"
   2080 +
   2081 +/* LLVM name for the native AsmParser init function, if available */
   2082 +#define LLVM_NATIVE_ASMPARSER LLVMInitializeMipsAsmParser
   2083 +
   2084 +/* LLVM name for the native AsmPrinter init function, if available */
   2085 +#define LLVM_NATIVE_ASMPRINTER LLVMInitializeMipsAsmPrinter
   2086 +
   2087 +/* LLVM name for the native Disassembler init function, if available */
   2088 +#define LLVM_NATIVE_DISASSEMBLER LLVMInitializeMipsDisassembler
   2089 +
   2090 +/* LLVM name for the native Target init function, if available */
   2091 +#define LLVM_NATIVE_TARGET LLVMInitializeMipsTarget
   2092 +
   2093 +/* LLVM name for the native TargetInfo init function, if available */
   2094 +#define LLVM_NATIVE_TARGETINFO LLVMInitializeMipsTargetInfo
   2095 +
   2096 +/* LLVM name for the native target MC init function, if available */
   2097 +#define LLVM_NATIVE_TARGETMC LLVMInitializeMipsTargetMC
   2098 +
   2099 +#elif defined(__aarch64__)
   2100 +
   2101 +/* LLVM architecture name for the native architecture, if available */
   2102 +#define LLVM_NATIVE_ARCH AArch64
   2103 +
   2104 +/* Host triple LLVM will be executed on */
   2105 +#define LLVM_HOST_TRIPLE "aarch64-none-linux-gnu"
   2106 +
   2107 +/* LLVM name for the native AsmParser init function, if available */
   2108 +#define LLVM_NATIVE_ASMPARSER LLVMInitializeAArch64AsmParser
   2109 +
   2110 +/* LLVM name for the native AsmPrinter init function, if available */
   2111 +#define LLVM_NATIVE_ASMPRINTER LLVMInitializeAArch64AsmPrinter
   2112 +
   2113 +/* LLVM name for the native Disassembler init function, if available */
   2114 +#define LLVM_NATIVE_DISASSEMBLER LLVMInitializeAArch64Disassembler
   2115 +
   2116 +/* LLVM name for the native Target init function, if available */
   2117 +#define LLVM_NATIVE_TARGET LLVMInitializeAArch64Target
   2118 +
   2119 +/* LLVM name for the native TargetInfo init function, if available */
   2120 +#define LLVM_NATIVE_TARGETINFO LLVMInitializeAArch64TargetInfo
   2121 +
   2122 +/* LLVM name for the native target MC init function, if available */
   2123 +#define LLVM_NATIVE_TARGETMC LLVMInitializeAArch64TargetMC
   2124 +
   2125 +#else
   2126 +
   2127 +#error "Unknown native architecture"
   2128 +
   2129 +#endif
   2130 +
   2131 +
   2132 +
   2133 +#if defined(_WIN32) || defined(_WIN64)
   2134 +
   2135 +/* Define if this is Unixish platform */
   2136 +/* #undef LLVM_ON_UNIX */
   2137 +
   2138 +/* Define if this is Win32ish platform */
   2139 +#define LLVM_ON_WIN32 1
   2140 +
   2141 +/* Define to 1 if you have the <windows.h> header file. */
   2142 +#define HAVE_WINDOWS_H 1
   2143 +
   2144 +/* Define to 1 if you have the `psapi' library (-lpsapi). */
   2145 +#define HAVE_LIBPSAPI 1
   2146 +
   2147 +/* Define to 1 if you have the `imagehlp' library (-limagehlp). */
   2148 +#define HAVE_LIBIMAGEHLP 1
   2149 +
   2150 +/* Type of 1st arg on ELM Callback */
   2151 +#define WIN32_ELMCB_PCSTR PSTR
   2152 +
   2153 +
   2154 +#else /* Linux, Mac OS X, ... Unixish platform */
   2155 +
   2156 +/* Define if this is Unixish platform */
   2157 +#define LLVM_ON_UNIX 1
   2158 +
   2159 +/* Define if this is Win32ish platform */
   2160 +/* #undef LLVM_ON_WIN32 */
   2161 +
   2162 +/* Type of 1st arg on ELM Callback */
   2163 +/* #undef WIN32_ELMCB_PCSTR */
   2164 +
   2165 +#endif
   2166 +
   2167 +#endif // LLVM_NATIVE_CONFIG_H
   2168 diff --git a/include/llvm/Support/DataTypes.h b/include/llvm/Support/DataTypes.h
   2169 new file mode 100644
   2170 index 0000000..a4a65b8
   2171 --- /dev/null
   2172 +++ b/include/llvm/Support/DataTypes.h
   2173 @@ -0,0 +1,213 @@
   2174 +/* include/llvm/Support/DataTypes.h.  Generated from DataTypes.h.in by configure.  */
   2175 +/*===-- include/Support/DataTypes.h - Define fixed size types -----*- C -*-===*\
   2176 +|*                                                                            *|
   2177 +|*                     The LLVM Compiler Infrastructure                       *|
   2178 +|*                                                                            *|
   2179 +|* This file is distributed under the University of Illinois Open Source      *|
   2180 +|* License. See LICENSE.TXT for details.                                      *|
   2181 +|*                                                                            *|
   2182 +|*===----------------------------------------------------------------------===*|
   2183 +|*                                                                            *|
   2184 +|* This file contains definitions to figure out the size of _HOST_ data types.*|
   2185 +|* This file is important because different host OS's define different macros,*|
   2186 +|* which makes portability tough.  This file exports the following            *|
   2187 +|* definitions:                                                               *|
   2188 +|*                                                                            *|
   2189 +|*   [u]int(32|64)_t : typedefs for signed and unsigned 32/64 bit system types*|
   2190 +|*   [U]INT(8|16|32|64)_(MIN|MAX) : Constants for the min and max values.     *|
   2191 +|*                                                                            *|
   2192 +|* No library is required when using these functions.                         *|
   2193 +|*                                                                            *|
   2194 +|*===----------------------------------------------------------------------===*/
   2195 +
   2196 +/* Please leave this file C-compatible. */
   2197 +
   2198 +/* Please keep this file in sync with DataTypes.h.cmake */
   2199 +
   2200 +#ifndef SUPPORT_DATATYPES_H
   2201 +#define SUPPORT_DATATYPES_H
   2202 +
   2203 +#define HAVE_SYS_TYPES_H 1
   2204 +#define HAVE_INTTYPES_H 1
   2205 +#define HAVE_STDINT_H 1
   2206 +#define HAVE_UINT64_T 1
   2207 +/* #undef HAVE_U_INT64_T */
   2208 +
   2209 +#ifdef __cplusplus
   2210 +#include <cmath>
   2211 +#else
   2212 +#include <math.h>
   2213 +#endif
   2214 +
   2215 +#ifndef _MSC_VER
   2216 +
   2217 +/* Note that this header's correct operation depends on __STDC_LIMIT_MACROS
   2218 +   being defined.  We would define it here, but in order to prevent Bad Things
   2219 +   happening when system headers or C++ STL headers include stdint.h before we
   2220 +   define it here, we define it on the g++ command line (in Makefile.rules). */
   2221 +#if !defined(__STDC_LIMIT_MACROS)
   2222 +# error "Must #define __STDC_LIMIT_MACROS before #including Support/DataTypes.h"
   2223 +#endif
   2224 +
   2225 +#if !defined(__STDC_CONSTANT_MACROS)
   2226 +# error "Must #define __STDC_CONSTANT_MACROS before " \
   2227 +        "#including Support/DataTypes.h"
   2228 +#endif
   2229 +
   2230 +/* Note that <inttypes.h> includes <stdint.h>, if this is a C99 system. */
   2231 +#ifdef HAVE_SYS_TYPES_H
   2232 +#include <sys/types.h>
   2233 +#endif
   2234 +
   2235 +#ifdef HAVE_INTTYPES_H
   2236 +#include <inttypes.h>
   2237 +#endif
   2238 +
   2239 +#ifdef HAVE_STDINT_H
   2240 +#include <stdint.h>
   2241 +#endif
   2242 +
   2243 +#ifdef _AIX
   2244 +#include "llvm/Support/AIXDataTypesFix.h"
   2245 +#endif
   2246 +
   2247 +/* Handle incorrect definition of uint64_t as u_int64_t */
   2248 +#ifndef HAVE_UINT64_T
   2249 +#ifdef HAVE_U_INT64_T
   2250 +typedef u_int64_t uint64_t;
   2251 +#else
   2252 +# error "Don't have a definition for uint64_t on this platform"
   2253 +#endif
   2254 +#endif
   2255 +
   2256 +#ifdef _OpenBSD_
   2257 +#define INT8_MAX 127
   2258 +#define INT8_MIN -128
   2259 +#define UINT8_MAX 255
   2260 +#define INT16_MAX 32767
   2261 +#define INT16_MIN -32768
   2262 +#define UINT16_MAX 65535
   2263 +#define INT32_MAX 2147483647
   2264 +#define INT32_MIN -2147483648
   2265 +#define UINT32_MAX 4294967295U
   2266 +#endif
   2267 +
   2268 +#else /* _MSC_VER */
   2269 +/* Visual C++ doesn't provide standard integer headers, but it does provide
   2270 +   built-in data types. */
   2271 +#include <stdlib.h>
   2272 +#include <stddef.h>
   2273 +#include <sys/types.h>
   2274 +#ifdef __cplusplus
   2275 +#include <cmath>
   2276 +#else
   2277 +#include <math.h>
   2278 +#endif
   2279 +typedef __int64 int64_t;
   2280 +typedef unsigned __int64 uint64_t;
   2281 +typedef signed int int32_t;
   2282 +typedef unsigned int uint32_t;
   2283 +typedef short int16_t;
   2284 +typedef unsigned short uint16_t;
   2285 +typedef signed char int8_t;
   2286 +typedef unsigned char uint8_t;
   2287 +typedef signed int ssize_t;
   2288 +#ifndef INT8_MAX
   2289 +# define INT8_MAX 127
   2290 +#endif
   2291 +#ifndef INT8_MIN
   2292 +# define INT8_MIN -128
   2293 +#endif
   2294 +#ifndef UINT8_MAX
   2295 +# define UINT8_MAX 255
   2296 +#endif
   2297 +#ifndef INT16_MAX
   2298 +# define INT16_MAX 32767
   2299 +#endif
   2300 +#ifndef INT16_MIN
   2301 +# define INT16_MIN -32768
   2302 +#endif
   2303 +#ifndef UINT16_MAX
   2304 +# define UINT16_MAX 65535
   2305 +#endif
   2306 +#ifndef INT32_MAX
   2307 +# define INT32_MAX 2147483647
   2308 +#endif
   2309 +#ifndef INT32_MIN
   2310 +/* MSC treats -2147483648 as -(2147483648U). */
   2311 +# define INT32_MIN (-INT32_MAX - 1)
   2312 +#endif
   2313 +#ifndef UINT32_MAX
   2314 +# define UINT32_MAX 4294967295U
   2315 +#endif
   2316 +/* Certain compatibility updates to VC++ introduce the `cstdint'
   2317 + * header, which defines the INT*_C macros. On default installs they
   2318 + * are absent. */
   2319 +#ifndef INT8_C
   2320 +# define INT8_C(C)   C##i8
   2321 +#endif
   2322 +#ifndef UINT8_C
   2323 +# define UINT8_C(C)  C##ui8
   2324 +#endif
   2325 +#ifndef INT16_C
   2326 +# define INT16_C(C)  C##i16
   2327 +#endif
   2328 +#ifndef UINT16_C
   2329 +# define UINT16_C(C) C##ui16
   2330 +#endif
   2331 +#ifndef INT32_C
   2332 +# define INT32_C(C)  C##i32
   2333 +#endif
   2334 +#ifndef UINT32_C
   2335 +# define UINT32_C(C) C##ui32
   2336 +#endif
   2337 +#ifndef INT64_C
   2338 +# define INT64_C(C)  C##i64
   2339 +#endif
   2340 +#ifndef UINT64_C
   2341 +# define UINT64_C(C) C##ui64
   2342 +#endif
   2343 +
   2344 +#ifndef PRId64
   2345 +# define PRId64 "I64d"
   2346 +#endif
   2347 +#ifndef PRIi64
   2348 +# define PRIi64 "I64i"
   2349 +#endif
   2350 +#ifndef PRIo64
   2351 +# define PRIo64 "I64o"
   2352 +#endif
   2353 +#ifndef PRIu64
   2354 +# define PRIu64 "I64u"
   2355 +#endif
   2356 +#ifndef PRIx64
   2357 +# define PRIx64 "I64x"
   2358 +#endif
   2359 +#ifndef PRIX64
   2360 +# define PRIX64 "I64X"
   2361 +#endif
   2362 +
   2363 +#endif /* _MSC_VER */
   2364 +
   2365 +/* Set defaults for constants which we cannot find. */
   2366 +#if !defined(INT64_MAX)
   2367 +# define INT64_MAX 9223372036854775807LL
   2368 +#endif
   2369 +#if !defined(INT64_MIN)
   2370 +# define INT64_MIN ((-INT64_MAX)-1)
   2371 +#endif
   2372 +#if !defined(UINT64_MAX)
   2373 +# define UINT64_MAX 0xffffffffffffffffULL
   2374 +#endif
   2375 +
   2376 +#if __GNUC__ > 3
   2377 +#define END_WITH_NULL __attribute__((sentinel))
   2378 +#else
   2379 +#define END_WITH_NULL
   2380 +#endif
   2381 +
   2382 +#ifndef HUGE_VALF
   2383 +#define HUGE_VALF (float)HUGE_VAL
   2384 +#endif
   2385 +
   2386 +#endif  /* SUPPORT_DATATYPES_H */
   2387 -- 
   2388 1.9.1.423.g4596e3a
   2389 
   2390