1 /*===------- llvm/Config/Targets.h - LLVM target checks -----------*- C -*-===*/ 2 /* */ 3 /* Part of the LLVM Project, under the Apache License v2.0 with LLVM */ 4 /* Exceptions. */ 5 /* See https://llvm.org/LICENSE.txt for license information. */ 6 /* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception */ 7 /* */ 8 /*===----------------------------------------------------------------------===*/ 9 10 /* This file enables clients to know whether specific targets are enabled. */ 11 12 #ifndef LLVM_CONFIG_TARGETS_H 13 #define LLVM_CONFIG_TARGETS_H 14 15 /* Define if the AArch64 target is built in */ 16 #ifdef LLVM_TARGET_ENABLE_AARCH64 17 #define LLVM_HAS_AARCH64_TARGET 1 18 #else 19 #define LLVM_HAS_AARCH64_TARGET 0 20 #endif 21 22 /* Define if the AMDGPU target is built in */ 23 #define LLVM_HAS_AMDGPU_TARGET 0 24 25 /* Define if the ARC target is built in */ 26 #define LLVM_HAS_ARC_TARGET 0 27 28 /* Define if the ARM target is built in */ 29 #ifdef LLVM_TARGET_ENABLE_ARM 30 #define LLVM_HAS_ARM_TARGET 1 31 #else 32 #define LLVM_HAS_ARM_TARGET 0 33 #endif 34 35 /* Define if the AVR target is built in */ 36 #define LLVM_HAS_AVR_TARGET 0 37 38 /* Define if the BPF target is built in */ 39 #ifdef LLVM_TARGET_ENABLE_BPF 40 #define LLVM_HAS_BPF_TARGET 1 41 #else 42 #define LLVM_HAS_BPF_TARGET 0 43 #endif 44 45 /* Define if the CSKY target is built in */ 46 #define LLVM_HAS_CSKY_TARGET 0 47 48 /* Define if the DirectX target is built in */ 49 #define LLVM_HAS_DIRECTX_TARGET 0 50 51 /* Define if the Hexagon target is built in */ 52 #define LLVM_HAS_HEXAGON_TARGET 0 53 54 /* Define if the Lanai target is built in */ 55 #define LLVM_HAS_LANAI_TARGET 0 56 57 /* Define if the LoongArch target is built in */ 58 #define LLVM_HAS_LOONGARCH_TARGET 0 59 60 /* Define if the M68k target is built in */ 61 #define LLVM_HAS_M68K_TARGET 0 62 63 /* Define if the Mips target is built in */ 64 #define LLVM_HAS_MIPS_TARGET 0 65 66 /* Define if the MSP430 target is built in */ 67 #define LLVM_HAS_MSP430_TARGET 0 68 69 /* Define if the NVPTX target is built in */ 70 #define LLVM_HAS_NVPTX_TARGET 0 71 72 /* Define if the PowerPC target is built in */ 73 #ifdef LLVM_TARGET_ENABLE_POWERPC 74 #define LLVM_HAS_POWERPC_TARGET 1 75 #else 76 #define LLVM_HAS_POWERPC_TARGET 0 77 #endif 78 79 /* Define if the RISCV target is built in */ 80 #ifdef LLVM_TARGET_ENABLE_RISCV 81 #define LLVM_HAS_RISCV_TARGET 1 82 #else 83 #define LLVM_HAS_RISCV_TARGET 0 84 #endif 85 86 /* Define if the Sparc target is built in */ 87 #define LLVM_HAS_SPARC_TARGET 0 88 89 /* Define if the SPIRV target is built in */ 90 #define LLVM_HAS_SPIRV_TARGET 0 91 92 /* Define if the SystemZ target is built in */ 93 #define LLVM_HAS_SYSTEMZ_TARGET 0 94 95 /* Define if the VE target is built in */ 96 #define LLVM_HAS_VE_TARGET 0 97 98 /* Define if the WebAssembly target is built in */ 99 #define LLVM_HAS_WEBASSEMBLY_TARGET 0 100 101 /* Define if the X86 target is built in */ 102 #ifdef LLVM_TARGET_ENABLE_X86 103 #define LLVM_HAS_X86_TARGET 1 104 #else 105 #define LLVM_HAS_X86_TARGET 0 106 #endif 107 108 /* Define if the XCore target is built in */ 109 #define LLVM_HAS_XCORE_TARGET 0 110 111 /* Define if the Xtensa target is built in */ 112 #define LLVM_HAS_XTENSA_TARGET 0 113 114 #endif 115