/*===- llvm/Config/Targets.def - LLVM Target Architectures ------*- C++ -*-===*\ |* *| |* The LLVM Compiler Infrastructure *| |* *| |* This file is distributed under the University of Illinois Open Source *| |* License. See LICENSE.TXT for details. *| |* *| |*===----------------------------------------------------------------------===*| |* *| |* This file enumerates all of the target architectures supported by *| |* this build of LLVM. Clients of this file should define the *| |* LLVM_TARGET macro to be a function-like macro with a single *| |* parameter (the name of the target); including this file will then *| |* enumerate all of the targets. *| |* *| |* The set of targets supported by LLVM is generated at configuration *| |* time, at which point this header is generated. Do not modify this *| |* header directly. *| |* *| \*===----------------------------------------------------------------------===*/ #ifndef LLVM_TARGET # error Please define the macro LLVM_TARGET(TargetName) #endif #if defined(__arm__) LLVM_TARGET(ARM) #elif defined(__mips__) LLVM_TARGET(Mips) #elif defined(__i386__) || defined(__x86_64__) LLVM_TARGET(X86) #if defined(FORCE_BUILD_ARM) LLVM_TARGET(ARM) #endif #elif defined(__aarch64__) LLVM_TARGET(ARM) LLVM_TARGET(AArch64) #else # error Unsupported TARGET_ARCH for LLVM_TARGET #endif #undef LLVM_TARGET