OpenGrok
Home
Sort by:
relevance
|
last modified time
|
path
Full Search
in project(s):
src
xsrc
Definition
Symbol
File Path
History
|
|
Help
Searched
refs:RMWI
(Results
1 - 20
of
20
) sorted by relevancy
/src/external/apache2/llvm/dist/llvm/lib/Transforms/InstCombine/
InstCombineAtomicRMW.cpp
25
bool isIdempotentRMW(AtomicRMWInst&
RMWI
) {
26
if (auto CF = dyn_cast<ConstantFP>(
RMWI
.getValOperand()))
27
switch(
RMWI
.getOperation()) {
36
auto C = dyn_cast<ConstantInt>(
RMWI
.getValOperand());
40
switch(
RMWI
.getOperation()) {
63
bool isSaturating(AtomicRMWInst&
RMWI
) {
64
if (auto CF = dyn_cast<ConstantFP>(
RMWI
.getValOperand()))
65
switch(
RMWI
.getOperation()) {
73
auto C = dyn_cast<ConstantInt>(
RMWI
.getValOperand());
77
switch(
RMWI
.getOperation())
[
all
...]
/src/external/apache2/llvm/dist/llvm/lib/Target/NVPTX/
NVPTXAtomicLower.cpp
48
if (AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(&I))
49
if (
RMWI
->getPointerAddressSpace() == ADDRESS_SPACE_LOCAL)
50
LocalMemoryAtomics.push_back(
RMWI
);
53
for (AtomicRMWInst *
RMWI
: LocalMemoryAtomics)
54
Changed |= lowerAtomicRMWInst(
RMWI
);
/src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Scalar/
LowerAtomic.h
29
/// Convert the given
RMWI
into primitive load and stores,
32
bool lowerAtomicRMWInst(AtomicRMWInst *
RMWI
);
/src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
LowerAtomic.cpp
43
bool llvm::lowerAtomicRMWInst(AtomicRMWInst *
RMWI
) {
44
IRBuilder<> Builder(
RMWI
);
45
Value *Ptr =
RMWI
->getPointerOperand();
46
Value *Val =
RMWI
->getValOperand();
51
switch (
RMWI
->getOperation()) {
98
RMWI
->replaceAllUsesWith(Orig);
99
RMWI
->eraseFromParent();
125
else if (AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(&Inst))
126
Changed |= lowerAtomicRMWInst(
RMWI
);
/src/external/apache2/llvm/dist/llvm/lib/Analysis/
MemoryLocation.cpp
77
MemoryLocation MemoryLocation::get(const AtomicRMWInst *
RMWI
) {
79
RMWI
->getAAMetadata(AATags);
80
const auto &DL =
RMWI
->getModule()->getDataLayout();
82
return MemoryLocation(
RMWI
->getPointerOperand(),
84
RMWI
->getValOperand()->getType())),
/src/external/apache2/llvm/dist/llvm/lib/CodeGen/
AtomicExpandPass.cpp
106
bool isIdempotentRMW(AtomicRMWInst *
RMWI
);
107
bool simplifyIdempotentRMW(AtomicRMWInst *
RMWI
);
146
static unsigned getAtomicOpSize(AtomicRMWInst *
RMWI
) {
147
const DataLayout &DL =
RMWI
->getModule()->getDataLayout();
148
return DL.getTypeStoreSize(
RMWI
->getValOperand()->getType());
191
auto
RMWI
= dyn_cast<AtomicRMWInst>(I);
193
assert((LI || SI ||
RMWI
|| CASI) && "Unknown atomic instruction");
208
} else if (
RMWI
) {
209
if (!atomicSizeSupported(TLI,
RMWI
)) {
210
expandAtomicRMWToLibcall(
RMWI
);
[
all
...]
/src/external/apache2/llvm/dist/llvm/lib/IR/
Instruction.cpp
457
if (const AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(I1))
458
return
RMWI
->getOperation() == cast<AtomicRMWInst>(I2)->getOperation() &&
459
RMWI
->isVolatile() == cast<AtomicRMWInst>(I2)->isVolatile() &&
460
RMWI
->getOrdering() == cast<AtomicRMWInst>(I2)->getOrdering() &&
461
RMWI
->getSyncScopeID() == cast<AtomicRMWInst>(I2)->getSyncScopeID();
Verifier.cpp
523
void visitAtomicRMWInst(AtomicRMWInst &
RMWI
);
3836
void Verifier::visitAtomicRMWInst(AtomicRMWInst &
RMWI
) {
3837
Assert(
RMWI
.getOrdering() != AtomicOrdering::Unordered,
3838
"atomicrmw instructions cannot be unordered.", &
RMWI
);
3839
auto Op =
RMWI
.getOperation();
3840
Type *ElTy =
RMWI
.getOperand(1)->getType();
3845
&
RMWI
, ElTy);
3850
&
RMWI
, ElTy);
3855
&
RMWI
, ElTy);
3857
checkAtomicMemAccessSize(ElTy, &
RMWI
);
[
all
...]
AsmWriter.cpp
4004
if (const AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(&I))
4005
Out << ' ' << AtomicRMWInst::getOperationName(
RMWI
->getOperation());
4363
} else if (const AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(&I)) {
4364
writeAtomic(
RMWI
->getContext(),
RMWI
->getOrdering(),
4365
RMWI
->getSyncScopeID());
4366
Out << ", align " <<
RMWI
->getAlign().value();
Core.cpp
2054
if (AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(P))
2055
return
RMWI
->getAlign().value();
2074
else if (AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(P))
2075
RMWI
->setAlignment(Align(Bytes));
/src/external/apache2/llvm/dist/llvm/lib/Transforms/Instrumentation/
ThreadSanitizer.cpp
772
} else if (AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(I)) {
773
Value *Addr =
RMWI
->getPointerOperand();
777
FunctionCallee F = TsanAtomicRMW[
RMWI
->getOperation()][Idx];
785
IRB.CreateIntCast(
RMWI
->getValOperand(), Ty, false),
786
createOrdering(&IRB,
RMWI
->getOrdering())};
/src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
FunctionComparator.cpp
653
if (const AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(L)) {
654
if (int Res = cmpNumbers(
RMWI
->getOperation(),
657
if (int Res = cmpNumbers(
RMWI
->isVolatile(),
660
if (int Res = cmpOrderings(
RMWI
->getOrdering(),
663
return cmpNumbers(
RMWI
->getSyncScopeID(),
InlineFunction.cpp
1026
else if (const AtomicRMWInst *
RMWI
= dyn_cast<AtomicRMWInst>(I))
1027
PtrArgs.push_back(
RMWI
->getPointerOperand());
SimplifyCFG.cpp
4677
} else if (auto *
RMWI
= dyn_cast<AtomicRMWInst>(BBI)) {
4678
if (
RMWI
->isVolatile())
/src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
MemoryLocation.h
240
static MemoryLocation get(const AtomicRMWInst *
RMWI
);
/src/external/apache2/llvm/dist/clang/lib/CodeGen/
CGAtomic.cpp
673
llvm::AtomicRMWInst *
RMWI
=
675
RMWI
->setVolatile(E->isVolatile());
679
llvm::Value *Result =
RMWI
;
683
RMWI
, LoadVal1);
685
Result = CGF.Builder.CreateBinOp((llvm::Instruction::BinaryOps)PostOp,
RMWI
,
CGBuiltin.cpp
10372
AtomicRMWInst *
RMWI
= Builder.CreateAtomicRMW(
10375
return Builder.CreateAdd(
RMWI
, Arg1);
/src/external/apache2/llvm/dist/llvm/lib/AsmParser/
LLParser.cpp
7701
AtomicRMWInst *
RMWI
=
7704
RMWI
->setVolatile(isVolatile);
7705
Inst =
RMWI
;
/src/external/apache2/llvm/dist/llvm/lib/Transforms/IPO/
AttributorAttributes.cpp
173
if (auto *
RMWI
= dyn_cast<AtomicRMWInst>(I)) {
174
return
RMWI
->getPointerOperand();
/src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/
TargetLowering.h
2004
lowerIdempotentRMWIntoFencedLoad(AtomicRMWInst *
RMWI
) const {
Completed in 89 milliseconds
Indexes created Mon Jun 08 00:24:58 UTC 2026