LLVM
13.0.0git
|
#include "X86.h"
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/Analysis/OptimizationRemarkEmitter.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/IntrinsicsX86.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Target/TargetMachine.h"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "lower-amx-type" |
Functions | |
static AllocaInst * | CreateAllocaInst (IRBuilder<> &Builder, BasicBlock *BB) |
static std::pair< Value *, Value * > | getShape (IntrinsicInst *II, unsigned OpNo) |
static void | combineLoadBitcast (LoadInst *LD, BitCastInst *Bitcast) |
static void | combineBitcastStore (BitCastInst *Bitcast, StoreInst *ST) |
static bool | transformBitcast (BitCastInst *Bitcast) |
INITIALIZE_PASS_BEGIN (X86LowerAMXTypeLegacyPass, DEBUG_TYPE, PassName, false, false) INITIALIZE_PASS_END(X86LowerAMXTypeLegacyPass | |
Variables | |
static const char | PassName [] = "Lower AMX type for load/store" |
DEBUG_TYPE | |
false | |
#define DEBUG_TYPE "lower-amx-type" |
Definition at line 42 of file X86LowerAMXType.cpp.
|
static |
Definition at line 128 of file X86LowerAMXType.cpp.
References llvm::AMDGPU::HSAMD::Kernel::Key::Args, llvm::LegalizeActions::Bitcast, Builder, llvm::None, and llvm::ARM_MB::ST.
|
static |
Definition at line 103 of file X86LowerAMXType.cpp.
References llvm::AMDGPU::HSAMD::Kernel::Key::Args, llvm::LegalizeActions::Bitcast, Builder, llvm::Use::getOperandNo(), getShape(), llvm::Use::getUser(), llvm::ARM_MB::LD, and llvm::None.
|
static |
Definition at line 44 of file X86LowerAMXType.cpp.
References BB, Builder, DL, F, llvm::VectorType::get(), llvm::Type::getX86_AMXTy(), M, and llvm::AllocaInst::setAlignment().
Referenced by transformBitcast().
|
static |
Definition at line 59 of file X86LowerAMXType.cpp.
References llvm::CallBase::getArgOperand(), llvm::IntrinsicInst::getIntrinsicID(), and llvm_unreachable.
Referenced by combineLoadBitcast(), and transformBitcast().
INITIALIZE_PASS_BEGIN | ( | X86LowerAMXTypeLegacyPass | , |
DEBUG_TYPE | , | ||
PassName | , | ||
false | , | ||
false | |||
) |
|
static |
Definition at line 160 of file X86LowerAMXType.cpp.
References llvm::AMDGPU::HSAMD::Kernel::Key::Args, llvm::LegalizeActions::Bitcast, Builder, CreateAllocaInst(), llvm::Use::getOperandNo(), getShape(), llvm::Use::getUser(), and llvm::None.
DEBUG_TYPE |
Definition at line 358 of file X86LowerAMXType.cpp.
false |
Definition at line 358 of file X86LowerAMXType.cpp.