MLIR  15.0.0git
Classes | Namespaces | Functions
ModuleTranslation.h File Reference
#include "mlir/IR/Operation.h"
#include "mlir/IR/Value.h"
#include "mlir/Target/LLVMIR/Export.h"
#include "mlir/Target/LLVMIR/LLVMTranslationInterface.h"
#include "mlir/Target/LLVMIR/TypeToLLVM.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/Frontend/OpenMP/OMPIRBuilder.h"
+ Include dependency graph for ModuleTranslation.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  mlir::LLVM::ModuleTranslation
 Implementation class for module translation. More...
 
class  mlir::LLVM::ModuleTranslation::StackFrame
 Common CRTP base class for ModuleTranslation stack frames. More...
 
class  mlir::LLVM::ModuleTranslation::StackFrameBase< Derived >
 Concrete CRTP base class for ModuleTranslation stack frames. More...
 
struct  mlir::LLVM::ModuleTranslation::SaveStack< T >
 RAII object calling stackPush/stackPop on construction/destruction. More...
 
struct  llvm::isa_impl< T, ::mlir::LLVM::ModuleTranslation::StackFrame >
 

Namespaces

 llvm
 The OpAsmOpInterface, see OpAsmInterface.td for more details.
 
 mlir
 TODO: Remove this file when SCCP and integer range analysis have been ported to the new framework.
 
 mlir::LLVM
 
 mlir::LLVM::detail
 

Functions

void mlir::LLVM::detail::connectPHINodes (Region &region, const ModuleTranslation &state)
 For all blocks in the region that were converted to LLVM IR using the given ModuleTranslation, connect the PHI nodes of the corresponding LLVM IR blocks to the results of preceding blocks. More...
 
SetVector< Block * > mlir::LLVM::detail::getTopologicallySortedBlocks (Region &region)
 Get a topologically sorted list of blocks of the given region. More...
 
llvm::Constant * mlir::LLVM::detail::getLLVMConstant (llvm::Type *llvmType, Attribute attr, Location loc, const ModuleTranslation &moduleTranslation)
 Create an LLVM IR constant of llvmType from the MLIR attribute attr. More...
 
llvm::Value * mlir::LLVM::detail::createIntrinsicCall (llvm::IRBuilderBase &builder, llvm::Intrinsic::ID intrinsic, ArrayRef< llvm::Value *> args={}, ArrayRef< llvm::Type *> tys={})
 Creates a call to an LLVM IR intrinsic function with the given arguments. More...