LLVM
15.0.0git
|
#include "llvm/IR/Instructions.h"
#include "LLVMContextImpl.h"
#include "llvm/ADT/None.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Twine.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constant.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/MDBuilder.h"
#include "llvm/IR/Metadata.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Operator.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/AtomicOrdering.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/TypeSize.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <vector>
Go to the source code of this file.
Variables | |
static cl::opt< bool > | DisableI2pP2iOpt ("disable-i2p-p2i-opt", cl::init(false), cl::desc("Disables inttoptr/ptrtoint roundtrip optimization")) |
|
static |
Definition at line 1355 of file Instructions.cpp.
References assert(), BB, and DL.
Referenced by computeAllocaDefaultAlign().
|
static |
Definition at line 1363 of file Instructions.cpp.
References assert(), computeAllocaDefaultAlign(), and I.
|
static |
Definition at line 1437 of file Instructions.cpp.
References assert(), BB, and DL.
Referenced by computeLoadStoreDefaultAlign().
|
static |
Definition at line 1445 of file Instructions.cpp.
References assert(), computeLoadStoreDefaultAlign(), and I.
|
static |
Definition at line 792 of file Instructions.cpp.
References assert(), BB, llvm::CallInst::Create(), F, llvm::FunctionCallee::getCallee(), llvm::Type::getInt8PtrTy(), llvm::Instruction::getParent(), llvm::Type::getVoidTy(), M, and llvm::Sched::Source.
Referenced by llvm::CallInst::CreateFree().
|
static |
Definition at line 662 of file Instructions.cpp.
References assert(), BB, llvm::CallInst::Create(), llvm::CastInst::CreateIntegerCast(), CreateMul(), F, llvm::ConstantInt::get(), llvm::FunctionCallee::getCallee(), llvm::BasicBlock::getInstList(), llvm::Type::getInt8PtrTy(), llvm::ConstantExpr::getIntegerCast(), llvm::ConstantExpr::getMul(), llvm::Instruction::getParent(), llvm::Value::getType(), llvm::PointerType::getUnqual(), IsConstantOne(), llvm::Type::isVoidTy(), M, llvm::CallBase::setCallingConv(), and llvm::CallInst::setTailCall().
Referenced by llvm::CallInst::CreateMalloc().
Definition at line 1940 of file Instructions.cpp.
References assert(), llvm::PoisonValue::get(), and llvm::Value::getType().
|
static |
Definition at line 1343 of file Instructions.cpp.
References assert(), Context, llvm::ConstantInt::get(), llvm::Type::getInt32Ty(), llvm::Value::getType(), and llvm::Type::isIntegerTy().
|
static |
Definition at line 1779 of file Instructions.cpp.
References llvm::ArrayRef< T >::empty(), llvm::GetElementPtrInst::getTypeAtIndex(), and llvm::ArrayRef< T >::slice().
Referenced by llvm::GetElementPtrInst::getIndexedType().
|
static |
IsConstantOne - Return true only if val is constant int 1.
Definition at line 656 of file Instructions.cpp.
References assert(), llvm::ConstantInt::isOne(), and val.
Referenced by createMalloc().
Definition at line 2198 of file Instructions.cpp.
References i, isSingleSourceMaskImpl(), and llvm::BitmaskEnumDetail::Mask().
Referenced by llvm::ShuffleVectorInst::isConcat(), llvm::ShuffleVectorInst::isIdentityMask(), llvm::ShuffleVectorInst::isIdentityWithExtract(), llvm::ShuffleVectorInst::isIdentityWithPadding(), and llvm::ShuffleVectorInst::isInsertSubvectorMask().
|
static |
Definition at line 2462 of file Instructions.cpp.
References llvm::all_of(), assert(), llvm::BitmaskEnumDetail::Mask(), llvm::seq(), llvm::ArrayRef< T >::size(), and llvm::UndefMaskElem.
Referenced by llvm::ShuffleVectorInst::isReplicationMask().
Definition at line 2174 of file Instructions.cpp.
References assert(), I, and llvm::BitmaskEnumDetail::Mask().
Referenced by llvm::ShuffleVectorInst::isExtractSubvectorMask(), isIdentityMaskImpl(), llvm::ShuffleVectorInst::isInsertSubvectorMask(), and llvm::ShuffleVectorInst::isSingleSourceMask().
|
static |
Referenced by llvm::CastInst::isEliminableCastPair().