1*647cbc5dSDimitry Andric/*===------ llvm/Config/TargetMCAs.def - LLVM Target MCAs -------*- C++ -*-===*\
2*647cbc5dSDimitry Andric|*                                                                            *|
3*647cbc5dSDimitry Andric|* Part of the LLVM Project, under the Apache License v2.0 with LLVM          *|
4*647cbc5dSDimitry Andric|* Exceptions.                                                                *|
5*647cbc5dSDimitry Andric|* See https://llvm.org/LICENSE.txt for license information.                  *|
6*647cbc5dSDimitry Andric|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception                    *|
7*647cbc5dSDimitry Andric|*                                                                            *|
8*647cbc5dSDimitry Andric|*===----------------------------------------------------------------------===*|
9*647cbc5dSDimitry Andric|*                                                                            *|
10*647cbc5dSDimitry Andric|* This file enumerates all of the target MCAs                  *|
11*647cbc5dSDimitry Andric|* supported by this build of LLVM. Clients of this file should define        *|
12*647cbc5dSDimitry Andric|* the LLVM_TARGETMCA macro to be a function-like macro with a             *|
13*647cbc5dSDimitry Andric|* single parameter (the name of the target whose assembly can be             *|
14*647cbc5dSDimitry Andric|* generated); including this file will then enumerate all of the             *|
15*647cbc5dSDimitry Andric|* targets with target MCAs.                                             *|
16*647cbc5dSDimitry Andric|*                                                                            *|
17*647cbc5dSDimitry Andric|* The set of targets supported by LLVM is generated at configuration         *|
18*647cbc5dSDimitry Andric|* time, at which point this header is generated. Do not modify this          *|
19*647cbc5dSDimitry Andric|* header directly.                                                           *|
20*647cbc5dSDimitry Andric|*                                                                            *|
21*647cbc5dSDimitry Andric\*===----------------------------------------------------------------------===*/
22*647cbc5dSDimitry Andric
235e801ac6SDimitry Andric#ifndef LLVM_TARGETMCA
245e801ac6SDimitry Andric#  error Please define the macro LLVM_TARGETMCA(TargetName)
255e801ac6SDimitry Andric#endif
265e801ac6SDimitry Andric
27bdd1243dSDimitry Andric#ifdef LLVM_TARGET_ENABLE_RISCV
28bdd1243dSDimitry AndricLLVM_TARGETMCA(RISCV)
29bdd1243dSDimitry Andric#endif
303a9a9c0cSDimitry Andric#ifdef LLVM_TARGET_ENABLE_X86
313a9a9c0cSDimitry AndricLLVM_TARGETMCA(X86)
323a9a9c0cSDimitry Andric#endif
333a9a9c0cSDimitry Andric
34*647cbc5dSDimitry Andric
355e801ac6SDimitry Andric#undef LLVM_TARGETMCA
36