1/*===- llvm/Config/Targets.def - LLVM Target Architectures ------*- 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 enumerates all of the target architectures supported by *|
11|* this build of LLVM. Clients of this file should define the *|
12|* LLVM_TARGET macro to be a function-like macro with a single *|
13|* parameter (the name of the target); including this file will then *|
14|* enumerate all of the targets. *|
15|* *|
16|* The set of targets supported by LLVM is generated at configuration *|
17|* time, at which point this header is generated. Do not modify this *|
18|* header directly. *|
19|* *|
20\*===----------------------------------------------------------------------===*/
21
22#ifndef LLVM_TARGET
23# error Please define the macro LLVM_TARGET(TargetName)
24#endif
25
26LLVM_TARGET(AArch64)
27LLVM_TARGET(AMDGPU)
28LLVM_TARGET(ARM)
29LLVM_TARGET(AVR)
30LLVM_TARGET(BPF)
31LLVM_TARGET(Hexagon)
32LLVM_TARGET(Lanai)
33LLVM_TARGET(LoongArch)
34LLVM_TARGET(Mips)
35LLVM_TARGET(MSP430)
36LLVM_TARGET(NVPTX)
37LLVM_TARGET(PowerPC)
38LLVM_TARGET(RISCV)
39LLVM_TARGET(Sparc)
40LLVM_TARGET(SystemZ)
41LLVM_TARGET(VE)
42LLVM_TARGET(WebAssembly)
43LLVM_TARGET(X86)
44LLVM_TARGET(XCore)
45
46
47#undef LLVM_TARGET
48