MLIR  20.0.0git
All.h
Go to the documentation of this file.
1 //===- All.h - MLIR To LLVM IR Translation Registration ---------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 // This file defines a helper to register the translations of all suitable
10 // dialects to LLVM IR.
11 //
12 //===----------------------------------------------------------------------===//
13 
14 #ifndef MLIR_TARGET_LLVMIR_DIALECT_ALL_H
15 #define MLIR_TARGET_LLVMIR_DIALECT_ALL_H
16 
33 
34 namespace mlir {
35 class DialectRegistry;
36 
37 /// Registers all dialects that can be translated to LLVM IR and the
38 /// corresponding translation interfaces.
39 static inline void registerAllToLLVMIRTranslations(DialectRegistry &registry) {
54 
55  // Extension required for translating GPU offloading Ops.
57 }
58 
59 /// Registers all the translations to LLVM IR required by GPU passes.
60 /// TODO: Remove this function when a safe dialect interface registration
61 /// mechanism is implemented, see D157703.
62 static inline void
70 
71  // Extension required for translating GPU offloading Ops.
73 }
74 
75 /// Registers all dialects that can be translated from LLVM IR and the
76 /// corresponding translation interfaces.
77 static inline void
79  registerLLVMDialectImport(registry);
80  registerNVVMDialectImport(registry);
81 }
82 } // namespace mlir
83 
84 #endif // MLIR_TARGET_LLVMIR_DIALECT_ALL_H
The DialectRegistry maps a dialect namespace to a constructor for the matching dialect.
void registerOffloadingLLVMTranslationInterfaceExternalModels(mlir::DialectRegistry &registry)
Registers the offloading LLVM translation interfaces for gpu.select_object.
Include the generated interface declarations.
void registerAMXDialectTranslation(DialectRegistry &registry)
Register the AMX dialect and the translation from it to the LLVM IR in the given registry;.
void registerX86VectorDialectTranslation(DialectRegistry &registry)
Register the X86Vector dialect and the translation from it to the LLVM IR in the given registry;.
void registerNVVMDialectTranslation(DialectRegistry &registry)
Register the NVVM dialect and the translation from it to the LLVM IR in the given registry;.
void registerArmSMEDialectTranslation(DialectRegistry &registry)
Register the ArmSME dialect and the translation from it to the LLVM IR in the given registry;.
void registerArmSVEDialectTranslation(DialectRegistry &registry)
Register the ArmSVE dialect and the translation from it to the LLVM IR in the given registry;.
void registerNVVMDialectImport(DialectRegistry &registry)
Registers the NVVM dialect and its import from LLVM IR in the given registry.
static void registerAllFromLLVMIRTranslations(DialectRegistry &registry)
Registers all dialects that can be translated from LLVM IR and the corresponding translation interfac...
Definition: All.h:78
void registerOpenMPDialectTranslation(DialectRegistry &registry)
Register the OpenMP dialect and the translation from it to the LLVM IR in the given registry;.
static void registerAllGPUToLLVMIRTranslations(DialectRegistry &registry)
Registers all the translations to LLVM IR required by GPU passes.
Definition: All.h:63
void registerBuiltinDialectTranslation(DialectRegistry &registry)
Register the translation from the builtin dialect to the LLVM IR in the given registry.
void registerLLVMDialectTranslation(DialectRegistry &registry)
Register the LLVM dialect and the translation from it to the LLVM IR in the given registry;.
void registerVCIXDialectTranslation(DialectRegistry &registry)
Register the VCIX dialect and the translation from it to the LLVM IR in the given registry.
void registerGPUDialectTranslation(DialectRegistry &registry)
Register the GPU dialect and the translation from it to the LLVM IR in the given registry;.
void registerLLVMDialectImport(DialectRegistry &registry)
Registers the LLVM dialect and its import from LLVM IR in the given registry.
void registerROCDLDialectTranslation(DialectRegistry &registry)
Register the ROCDL dialect and the translation from it to the LLVM IR in the given registry;.
void registerArmNeonDialectTranslation(DialectRegistry &registry)
Register the ArmNeon dialect and the translation from it to the LLVM IR in the given registry;.
static void registerAllToLLVMIRTranslations(DialectRegistry &registry)
Registers all dialects that can be translated to LLVM IR and the corresponding translation interfaces...
Definition: All.h:39
void registerSPIRVDialectTranslation(DialectRegistry &registry)
Register the SPIR-V dialect and the translation from it to the LLVM IR in the given registry;.
void registerOpenACCDialectTranslation(DialectRegistry &registry)
Register the OpenACC dialect and the translation to the LLVM IR in the given registry;.