Polly 22.0.0git
|
#include "polly/CodeGen/IRBuilder.h"
#include "polly/ScopInfo.h"
#include "polly/Support/ScopHelper.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/IR/Metadata.h"
Go to the source code of this file.
Functions | |
static MDNode * | getID (LLVMContext &Ctx, Metadata *arg0=nullptr, Metadata *arg1=nullptr) |
Get a self referencing id metadata node. | |
static void | addVectorizeMetadata (LLVMContext &Ctx, SmallVector< Metadata *, 3 > *Args, bool EnableLoopVectorizer) |
void | addParallelMetadata (LLVMContext &Ctx, SmallVector< Metadata *, 3 > *Args, llvm::SmallVector< llvm::MDNode *, 8 > ParallelLoops) |
static llvm::Value * | getMemAccInstPointerOperand (Instruction *Inst) |
Get the pointer operand. | |
static Value * | findBasePtr (Value *Val) |
Find the base pointer of an array access. | |
Variables | |
static const int | MaxArraysInAliasScops = 10 |
void addParallelMetadata | ( | LLVMContext & | Ctx, |
SmallVector< Metadata *, 3 > * | Args, | ||
llvm::SmallVector< llvm::MDNode *, 8 > | ParallelLoops | ||
) |
Definition at line 141 of file IRBuilder.cpp.
References Ctx.
Referenced by polly::ScopAnnotator::annotateLoopLatch().
|
static |
Definition at line 131 of file IRBuilder.cpp.
References Ctx, and polly::Value.
Referenced by polly::ScopAnnotator::annotateLoopLatch().
|
static |
Find the base pointer of an array access.
This should be equivalent to ScalarEvolution::getPointerBase, which we cannot use here the IR is still under construction which ScalarEvolution assumes to not be modified.
Definition at line 203 of file IRBuilder.cpp.
References polly::Value.
Referenced by polly::ScopAnnotator::annotate().
|
static |
Get a self referencing id metadata node.
The MDNode looks like this (if arg0/arg1 are not null):
'!n = distinct !{!n, arg0, arg1}'
Definition at line 32 of file IRBuilder.cpp.
Referenced by polly::ScopAnnotator::buildAliasScopes().
|
static |
Get the pointer operand.
Inst | The instruction to be analyzed. |
Inst
is a memory access instruction and nullptr otherwise. Definition at line 190 of file IRBuilder.cpp.
References polly::MemAccInst::dyn_cast().
Referenced by polly::ScopAnnotator::annotate().
|
static |
Definition at line 23 of file IRBuilder.cpp.
Referenced by polly::ScopAnnotator::buildAliasScopes().