HomeSort by: relevance | last modified time | path
    Searched refs:Allocas (Results 1 - 18 of 18) sorted by relevancy

  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
Mem2Reg.cpp 37 std::vector<AllocaInst *> Allocas;
42 Allocas.clear();
44 // Find allocas that are safe to promote, by looking at all instructions in
49 Allocas.push_back(AI);
51 if (Allocas.empty())
54 PromoteMemToReg(Allocas, DT, &AC);
55 NumPromoted += Allocas.size();
PromoteMemoryToRegister.cpp 1 //===- PromoteMemoryToRegister.cpp - Convert allocas to registers ---------===//
176 /// blocks multiple times when promoting many allocas in the same block.
187 /// This code only looks at accesses to allocas.
224 std::vector<AllocaInst *> Allocas;
234 /// Reverse mapping of Allocas.
245 /// For each PHI node, keep track of which entry in Allocas it corresponds
265 PromoteMem2Reg(ArrayRef<AllocaInst *> Allocas, DominatorTree &DT,
267 : Allocas(Allocas.begin(), Allocas.end()), DT(DT)
    [all...]
CodeExtractor.cpp 315 Allocas.push_back(AI);
516 // Look up allocas in the original function in CodeExtractorAnalysisCache, as
1039 /// of allocas which will be moved from the caller function into the extracted
1147 // Create allocas for the outputs
1378 // allocas output values are stored in are only in-use in the codeRepl block.
1666 // Group the allocas at the start of the block, so that any bitcast uses of
1667 // the allocas are well-defined.
1677 "Did not expect a sink candidate without any allocas");
1698 // Construct new function based on inputs/outputs & add allocas for all defs.
  /src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Utils/
PromoteMemToReg.h 1 //===- PromoteMemToReg.h - Promote Allocas to Scalars -----------*- C++ -*-===//
36 /// does not modify the CFG of the function at all. All allocas must be from
39 void PromoteMemToReg(ArrayRef<AllocaInst *> Allocas, DominatorTree &DT,
CodeExtractor.h 47 /// The allocas in the function.
48 SmallVector<AllocaInst *, 16> Allocas;
62 /// Get the allocas in the function at the time the analysis was created.
63 /// Note that some of these allocas may no longer be present in the function,
65 ArrayRef<AllocaInst *> getAllocas() const { return Allocas; }
83 /// 3) Add allocas for any scalar outputs, adding all of the outputs' allocas
167 const ValueSet &Allocas) const;
177 /// Find the set of allocas whose life ranges are contained within the
180 /// Allocas which have life_time markers contained in the outlined regio
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Analysis/
StackLifetime.cpp 126 // * the sets of allocas whose lifetime starts or ends in this BB
284 dbgs() << "Allocas:\n";
286 dbgs() << " " << AllocaNo << ": " << *Allocas[AllocaNo] << "\n";
310 ArrayRef<const AllocaInst *> Allocas,
312 : F(F), Type(Type), Allocas(Allocas), NumAllocas(Allocas.size()) {
316 AllocaNumbering[Allocas[I]] = I;
394 SmallVector<const AllocaInst *, 8> Allocas;
397 Allocas.push_back(AI)
    [all...]
StackSafetyAnalysis.cpp 38 STATISTIC(NumAllocaStackSafe, "Number of safe allocas");
39 STATISTIC(NumAllocaTotal, "Number of total allocas");
176 std::map<const AllocaInst *, UseInfo<CalleeTy>> Allocas;
199 O << " allocas uses:\n";
203 auto &AS = Allocas.find(AI)->second;
209 assert(Allocas.empty());
447 SmallVector<AllocaInst *, 64> Allocas;
450 Allocas.push_back(AI);
451 StackLifetime SL(F, Allocas, StackLifetime::LivenessType::Must);
454 for (auto *AI : Allocas) {
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/AArch64/
AArch64StackTagging.cpp 319 insertBaseTaggedPointer(const MapVector<AllocaInst *, AllocaInfo> &Allocas,
417 // FIXME: support dynamic allocas
422 // inalloca allocas are not treated as static, and we don't want
425 // swifterror allocas are register promoted by ISel
427 // safe allocas are not interesting
462 const MapVector<AllocaInst *, AllocaInfo> &Allocas,
466 for (auto &I : Allocas) {
552 MapVector<AllocaInst *, AllocaInfo> Allocas; // need stable iteration order
560 Allocas[AI].AI = AI;
561 Allocas[AI].OldAI = AI
    [all...]
  /src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
StackLifetime.h 30 /// Compute live ranges of allocas.
105 ArrayRef<const AllocaInst *> Allocas;
109 /// LiveRange for allocas.
112 /// The set of allocas that have at least one lifetime.start. All other
113 /// allocas get LiveRange that corresponds to the entire function.
136 StackLifetime(const Function &F, ArrayRef<const AllocaInst *> Allocas,
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Coroutines/
CoroFrame.cpp 49 frame for allocas whose liferanges are not overlapped, for testing purposes"),
319 // All the values (that are not allocas) that needs to be spilled to the
322 // Allocas contains all values defined as allocas that need to live in the
324 SmallVector<AllocaInfo, 8> Allocas;
330 for (const auto &A : Allocas)
401 static void dumpAllocas(const SmallVectorImpl<AllocaInfo> &Allocas) {
402 dbgs() << "------------- Allocas --------------\n";
403 for (const auto &A : Allocas) {
450 report_fatal_error("Coroutines cannot handle non static allocas yet")
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
AMDGPUPromoteAlloca.cpp 1 //===-- AMDGPUPromoteAlloca.cpp - Promote Allocas -------------------------===//
9 // This pass eliminates allocas by either converting them into vectors or
187 SmallVector<AllocaInst *, 16> Allocas;
190 Allocas.push_back(AI);
193 for (AllocaInst *AI : Allocas) {
845 // FIXME: Should try to pick the most likely to be profitable allocas first.
1111 SmallVector<AllocaInst *, 16> Allocas;
1114 Allocas.push_back(AI);
1117 for (AllocaInst *AI : Allocas) {
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/
StackColoring.cpp 18 // 2. Merge this pass with StackSlotColoring and allow merging of allocas with
73 /// The user may write code that uses allocas outside of the declared lifetime
79 ProtectFromEscapedAllocas("protect-from-escaped-allocas",
97 STATISTIC(EscapedAllocas, "Number of allocas that escaped the lifetime region");
948 // Keep a list of *allocas* which need to be remapped.
949 DenseMap<const AllocaInst*, const AllocaInst*> Allocas;
951 // Keep a list of allocas which has been affected by the remap.
958 Allocas[From] = To;
1023 // We've replaced IR-level uses of the remapped allocas, so we only
1029 if (!Allocas.count(AI)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/ExecutionEngine/Interpreter/
Interpreter.h 67 AllocaHolder Allocas; // Track memory allocated by alloca
Execution.cpp 1043 ECStack.back().Allocas.add(Memory);
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/SelectionDAG/
StatepointLowering.cpp 413 /// case constants and allocas, then fall back to spilling if required.
422 // This handles allocas as arguments to the statepoint (this is only
689 // allocas and give control over placement to the consumer. In this case,
692 SmallVector<SDValue, 4> Allocas;
696 // This handles allocas as arguments to the statepoint
699 Allocas.push_back(Builder.DAG.getTargetFrameIndex(
707 pushStackMapConstant(Ops, Builder, Allocas.size());
708 Ops.append(Allocas.begin(), Allocas.end());
1257 // We didn't need to spill these special cases (constants and allocas)
    [all...]
SelectionDAGBuilder.cpp 6766 SmallVector<const Value *, 4> Allocas;
6767 getUnderlyingObjects(ObjectPtr, Allocas);
6769 for (const Value *Alloca : Allocas) {
6852 "can only escape static allocas");
9830 // allocas are all used in the entry block, so we need approximately as many
9848 // Look for stores of arguments to static allocas. Look through bitcasts and
9861 // to allocas.
9884 // Skip allocas that have been initialized or clobbered.
9914 // many allocas.
10016 // Look for stores of arguments to static allocas. Mark such arguments with
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Instrumentation/
HWAddressSanitizer.cpp 110 cl::desc("instrument stack (allocas)"),
117 "to false, allocas are retagged before returning from the "
177 cl::desc("use short granules in allocas and outlined checks"), cl::Hidden,
233 SmallVectorImpl<AllocaInst *> &Allocas,
1142 SmallVectorImpl<AllocaInst *> &Allocas,
1150 for (unsigned N = 0; N < Allocas.size(); ++N) {
1151 auto *AI = Allocas[N];
1194 // FIXME: instrument dynamic allocas, too
1198 // We are only interested in allocas not promotable to registers.
1199 // Promotable allocas are common under -O0
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/GlobalISel/
IRTranslator.cpp 1838 SmallVector<const Value *, 4> Allocas;
1839 getUnderlyingObjects(CI.getArgOperand(1), Allocas);
1843 for (const Value *V : Allocas) {
1870 // Static allocas are tracked at the MF level, no need for DBG_VALUE

Completed in 91 milliseconds