Home | History | Annotate | Download | only in Config
      1 //===- llvm/Config/AsmPrinters.def - LLVM Assembly Printers -----*- C++ -*-===//
      2 //
      3 //                     The LLVM Compiler Infrastructure
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 //
     10 // This file enumerates all of the assembly-language printers
     11 // supported by this build of LLVM. Clients of this file should define
     12 // the LLVM_ASM_PRINTER macro to be a function-like macro with a
     13 // single parameter (the name of the target whose assembly can be
     14 // generated); including this file will then enumerate all of the
     15 // targets with assembly printers.
     16 //
     17 // The set of targets supported by LLVM is generated at configuration
     18 // time, at which point this header is generated. Do not modify this
     19 // header directly.
     20 //
     21 //===----------------------------------------------------------------------===//
     22 
     23 #ifndef LLVM_ASM_PRINTER
     24 #  error Please define the macro LLVM_ASM_PRINTER(TargetName)
     25 #endif
     26 
     27 #if defined(__arm__)
     28   LLVM_ASM_PRINTER(ARM)
     29 #elif defined(__mips__)
     30   LLVM_ASM_PRINTER(Mips)
     31 #elif defined(__i386__) || defined(__x86_64__)
     32   LLVM_ASM_PRINTER(X86)
     33 
     34 #if defined(FORCE_BUILD_ARM)
     35   LLVM_ASM_PRINTER(ARM)
     36   LLVM_ASM_PRINTER(AArch64)
     37 #endif
     38 
     39 #elif defined(__aarch64__)
     40   LLVM_ASM_PRINTER(ARM)
     41   LLVM_ASM_PRINTER(AArch64)
     42 #else
     43 #  error Unsupported TARGET_ARCH for LLVM_ASM_PRINTER
     44 #endif
     45 
     46 #undef LLVM_ASM_PRINTER
     47