LLVM 22.0.0git
X86LowerAMXType.cpp File Reference

Go to the source code of this file.

Classes

class  ShapeCalculator

Macros

#define DEBUG_TYPE   "lower-amx-type"

Functions

static bool isAMXCast (Instruction *II)
static unsigned getNumDefTiles (IntrinsicInst *II)
static bool isAMXIntrinsic (Value *I)
static bool containsAMXCode (Function &F)
static AllocaInstcreateAllocaInstAtEntry (IRBuilder<> &Builder, BasicBlock *BB, Type *Ty)
static InstructiongetFirstNonAllocaInTheEntryBlock (Function &F)
static ValuegetAllocaPos (BasicBlock *BB)
static InstructioncreateTileStore (Instruction *TileDef, Value *Ptr)
static void replaceWithTileLoad (Use &U, Value *Ptr, bool IsPHI=false)
static bool isIncomingOfPHI (Instruction *I)
 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

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "lower-amx-type"

Definition at line 67 of file X86LowerAMXType.cpp.

Function Documentation

◆ containsAMXCode()

bool containsAMXCode ( Function & F)
static

Definition at line 109 of file X86LowerAMXType.cpp.

References F, and I.

◆ createAllocaInstAtEntry()

AllocaInst * createAllocaInstAtEntry ( IRBuilder<> & Builder,
BasicBlock * BB,
Type * Ty )
static

◆ createTileStore()

◆ getAllocaPos()

◆ getFirstNonAllocaInTheEntryBlock()

Instruction * getFirstNonAllocaInTheEntryBlock ( Function & F)
static

◆ getNumDefTiles()

unsigned getNumDefTiles ( IntrinsicInst * II)
static

Definition at line 77 of file X86LowerAMXType.cpp.

References llvm::Type::getContainedType(), II, and llvm::Type::isX86_AMXTy().

Referenced by isAMXIntrinsic().

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( X86LowerAMXTypeLegacyPass ,
DEBUG_TYPE ,
PassName ,
false ,
false  )

◆ isAMXCast()

◆ isAMXIntrinsic()

bool isAMXIntrinsic ( Value * I)
static

Definition at line 91 of file X86LowerAMXType.cpp.

References llvm::dyn_cast(), getNumDefTiles(), I, II, and isAMXCast().

Referenced by ShapeCalculator::getShape().

◆ isIncomingOfPHI()

bool isIncomingOfPHI ( Instruction * I)
static

Definition at line 650 of file X86LowerAMXType.cpp.

References I, and llvm::isa().

◆ replaceWithTileLoad()

void replaceWithTileLoad ( Use & U,
Value * Ptr,
bool IsPHI = false )
static

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 1471 of file X86LowerAMXType.cpp.

◆ false

false

Definition at line 1471 of file X86LowerAMXType.cpp.

◆ PassName

PassName = "Lower AMX type for load/store"
static

Definition at line 1465 of file X86LowerAMXType.cpp.