Home
last modified time | relevance | path

Searched refs:Instruction (Results 1 – 25 of 1805) sorted by relevance

12345678910>>...73

/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/InstCombine/
DInstCombineInternal.h84 if (isa<Instruction>(V)) { in getComplexity()
203 if (BO->getOpcode() == Instruction::Add || in isFreeToInvert()
204 BO->getOpcode() == Instruction::Sub) in isFreeToInvert()
224 auto *I = cast<Instruction>(U); in canFreelyInvertAllUsersOf()
226 case Instruction::Select: in canFreelyInvertAllUsersOf()
227 case Instruction::Br: in canFreelyInvertAllUsersOf()
229 case Instruction::Xor: // Can invert 'xor' if it's a 'not', by ignoring it. in canFreelyInvertAllUsersOf()
256 case Instruction::SRem: // X % 1 = 0 in getSafeVectorConstantForBinop()
257 case Instruction::URem: // X %u 1 = 0 in getSafeVectorConstantForBinop()
260 case Instruction::FRem: // X % 1.0 (doesn't simplify, but it is safe) in getSafeVectorConstantForBinop()
[all …]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/IR/
DInstruction.cpp23 Instruction::Instruction(Type *ty, unsigned it, Use *Ops, unsigned NumOps, in Instruction() function in Instruction
24 Instruction *InsertBefore) in Instruction()
35 Instruction::Instruction(Type *ty, unsigned it, Use *Ops, unsigned NumOps, in Instruction() function in Instruction
44 Instruction::~Instruction() { in ~Instruction()
51 void Instruction::setParent(BasicBlock *P) { in setParent()
55 const Module *Instruction::getModule() const { in getModule()
59 const Function *Instruction::getFunction() const { in getFunction()
63 void Instruction::removeFromParent() { in removeFromParent()
67 iplist<Instruction>::iterator Instruction::eraseFromParent() { in eraseFromParent()
73 void Instruction::insertBefore(Instruction *InsertPos) { in insertBefore()
[all …]
/third_party/skia/third_party/externals/swiftshader/third_party/SPIRV-Tools/source/opt/
Ddebug_info_manager.h36 explicit DebugInlinedAtContext(Instruction* call_inst) in DebugInlinedAtContext()
40 const Instruction* GetLineOfCallInstruction() { return call_inst_line_; } in GetLineOfCallInstruction()
59 const Instruction* call_inst_line_;
89 void AnalyzeDebugInst(Instruction* dbg_inst);
95 uint32_t CreateDebugInlinedAt(const Instruction* line,
100 Instruction* DerefDebugExpression(Instruction* dbg_expr);
103 Instruction* GetDebugInfoNone();
107 Instruction* GetDebugInlinedAt(uint32_t dbg_inlined_at_id);
111 Instruction* GetDebugFunction(uint32_t fn_id) { in GetDebugFunction()
121 Instruction* CloneDebugInlinedAt(uint32_t clone_inlined_at_id,
[all …]
Dscalar_replacement_pass.h76 bool CanReplaceVariable(const Instruction* varInst) const;
82 bool CheckType(const Instruction* typeInst) const;
86 bool CheckAnnotations(const Instruction* varInst) const;
90 bool CheckTypeAnnotations(const Instruction* typeInst) const;
99 bool CheckUses(const Instruction* inst) const;
105 bool CheckUses(const Instruction* inst, VariableStats* stats) const;
108 bool CheckUsesRelaxed(const Instruction* inst) const;
111 void TransferAnnotations(const Instruction* source,
112 std::vector<Instruction*>* replacements);
124 Pass::Status ReplaceVariable(Instruction* inst,
[all …]
Dinstruction.h169 class Instruction : public utils::IntrusiveNodeBase<Instruction> {
177 Instruction() in Instruction() function
178 : utils::IntrusiveNodeBase<Instruction>(), in Instruction()
187 Instruction(IRContext*);
190 Instruction(IRContext*, SpvOp);
195 Instruction(IRContext* c, const spv_parsed_instruction_t& inst,
196 std::vector<Instruction>&& dbg_line = {});
198 Instruction(IRContext* c, const spv_parsed_instruction_t& inst,
203 Instruction(IRContext* c, SpvOp op, uint32_t ty_id, uint32_t res_id,
208 Instruction(const Instruction&) = default;
[all …]
Dir_builder.h47 IRContext* context, Instruction* insert_before,
61 Instruction* AddNullaryOp(uint32_t type_id, SpvOp opcode) { in AddNullaryOp()
69 std::unique_ptr<Instruction> new_inst( in AddNullaryOp()
70 new Instruction(GetContext(), opcode, type_id, result_id, {})); in AddNullaryOp()
74 Instruction* AddUnaryOp(uint32_t type_id, SpvOp opcode, uint32_t operand1) { in AddUnaryOp()
82 std::unique_ptr<Instruction> newUnOp(new Instruction( in AddUnaryOp()
88 Instruction* AddBinaryOp(uint32_t type_id, SpvOp opcode, uint32_t operand1, in AddBinaryOp()
97 std::unique_ptr<Instruction> newBinOp(new Instruction( in AddBinaryOp()
104 Instruction* AddTernaryOp(uint32_t type_id, SpvOp opcode, uint32_t operand1, in AddTernaryOp()
113 std::unique_ptr<Instruction> newTernOp(new Instruction( in AddTernaryOp()
[all …]
Ddef_use_manager.h37 Instruction* inst; // Instruction using the id.
62 using UserEntry = std::pair<Instruction*, Instruction*>;
99 using IdToDefMap = std::unordered_map<uint32_t, Instruction*>;
114 void AnalyzeInstDef(Instruction* inst);
119 void AnalyzeInstUse(Instruction* inst);
122 void AnalyzeInstDefUse(Instruction* inst);
126 Instruction* GetDef(uint32_t id);
127 const Instruction* GetDef(uint32_t id) const;
136 void ForEachUser(const Instruction* def,
137 const std::function<void(Instruction*)>& f) const;
[all …]
Dgraphics_robust_access_pass.h69 void ClampIndicesForAccessChain(Instruction* access_chain);
79 Instruction* GetValueForType(uint64_t value, const analysis::Integer* type);
86 Instruction* WidenInteger(bool sign_extend, uint32_t bit_width,
87 Instruction* value, Instruction* before_inst);
96 opt::Instruction* MakeUMinInst(const analysis::TypeManager& tm,
97 Instruction* x, Instruction* y,
98 Instruction* where);
109 opt::Instruction* MakeSClampInst(const analysis::TypeManager& tm,
110 Instruction* x, Instruction* min,
111 Instruction* max, Instruction* where);
[all …]
Dconvert_to_sampled_image_pass.h54 std::unordered_map<DescriptorSetAndBinding, Instruction*,
109 const Instruction& inst,
120 const analysis::Type* GetVariableType(const Instruction& variable) const;
123 SpvStorageClass GetStorageClass(const Instruction& variable) const;
128 void FindUses(const Instruction* inst, std::vector<Instruction*>* uses,
133 void FindUsesOfImage(const Instruction* image,
134 std::vector<Instruction*>* uses) const;
138 Instruction* CreateImageExtraction(Instruction* sampled_image);
149 Instruction* image_variable,
154 uint32_t GetSampledImageTypeForImage(Instruction* image_variable);
[all …]
/third_party/skia/third_party/externals/spirv-tools/source/opt/
Ddebug_info_manager.h36 explicit DebugInlinedAtContext(Instruction* call_inst) in DebugInlinedAtContext()
40 const Instruction* GetLineOfCallInstruction() { return call_inst_line_; } in GetLineOfCallInstruction()
59 const Instruction* call_inst_line_;
89 void AnalyzeDebugInst(Instruction* dbg_inst);
95 uint32_t CreateDebugInlinedAt(const Instruction* line,
100 Instruction* DerefDebugExpression(Instruction* dbg_expr);
103 Instruction* GetDebugInfoNone();
107 Instruction* GetDebugInlinedAt(uint32_t dbg_inlined_at_id);
111 Instruction* GetDebugFunction(uint32_t fn_id) { in GetDebugFunction()
121 Instruction* CloneDebugInlinedAt(uint32_t clone_inlined_at_id,
[all …]
Dscalar_replacement_pass.h76 bool CanReplaceVariable(const Instruction* varInst) const;
82 bool CheckType(const Instruction* typeInst) const;
86 bool CheckAnnotations(const Instruction* varInst) const;
90 bool CheckTypeAnnotations(const Instruction* typeInst) const;
99 bool CheckUses(const Instruction* inst) const;
105 bool CheckUses(const Instruction* inst, VariableStats* stats) const;
108 bool CheckUsesRelaxed(const Instruction* inst) const;
111 void TransferAnnotations(const Instruction* source,
112 std::vector<Instruction*>* replacements);
124 Pass::Status ReplaceVariable(Instruction* inst,
[all …]
Dinstruction.h169 class Instruction : public utils::IntrusiveNodeBase<Instruction> {
177 Instruction() in Instruction() function
178 : utils::IntrusiveNodeBase<Instruction>(), in Instruction()
187 Instruction(IRContext*);
190 Instruction(IRContext*, SpvOp);
195 Instruction(IRContext* c, const spv_parsed_instruction_t& inst,
196 std::vector<Instruction>&& dbg_line = {});
198 Instruction(IRContext* c, const spv_parsed_instruction_t& inst,
203 Instruction(IRContext* c, SpvOp op, uint32_t ty_id, uint32_t res_id,
208 Instruction(const Instruction&) = default;
[all …]
Dir_builder.h47 IRContext* context, Instruction* insert_before,
61 Instruction* AddNullaryOp(uint32_t type_id, SpvOp opcode) { in AddNullaryOp()
69 std::unique_ptr<Instruction> new_inst( in AddNullaryOp()
70 new Instruction(GetContext(), opcode, type_id, result_id, {})); in AddNullaryOp()
74 Instruction* AddUnaryOp(uint32_t type_id, SpvOp opcode, uint32_t operand1) { in AddUnaryOp()
82 std::unique_ptr<Instruction> newUnOp(new Instruction( in AddUnaryOp()
88 Instruction* AddBinaryOp(uint32_t type_id, SpvOp opcode, uint32_t operand1, in AddBinaryOp()
97 std::unique_ptr<Instruction> newBinOp(new Instruction( in AddBinaryOp()
104 Instruction* AddTernaryOp(uint32_t type_id, SpvOp opcode, uint32_t operand1, in AddTernaryOp()
113 std::unique_ptr<Instruction> newTernOp(new Instruction( in AddTernaryOp()
[all …]
Ddef_use_manager.h37 Instruction* inst; // Instruction using the id.
62 using UserEntry = std::pair<Instruction*, Instruction*>;
99 using IdToDefMap = std::unordered_map<uint32_t, Instruction*>;
114 void AnalyzeInstDef(Instruction* inst);
119 void AnalyzeInstUse(Instruction* inst);
122 void AnalyzeInstDefUse(Instruction* inst);
126 Instruction* GetDef(uint32_t id);
127 const Instruction* GetDef(uint32_t id) const;
136 void ForEachUser(const Instruction* def,
137 const std::function<void(Instruction*)>& f) const;
[all …]
Dgraphics_robust_access_pass.h69 void ClampIndicesForAccessChain(Instruction* access_chain);
79 Instruction* GetValueForType(uint64_t value, const analysis::Integer* type);
86 Instruction* WidenInteger(bool sign_extend, uint32_t bit_width,
87 Instruction* value, Instruction* before_inst);
96 opt::Instruction* MakeUMinInst(const analysis::TypeManager& tm,
97 Instruction* x, Instruction* y,
98 Instruction* where);
109 opt::Instruction* MakeSClampInst(const analysis::TypeManager& tm,
110 Instruction* x, Instruction* min,
111 Instruction* max, Instruction* where);
[all …]
Dconvert_to_sampled_image_pass.h54 std::unordered_map<DescriptorSetAndBinding, Instruction*,
109 const Instruction& inst,
120 const analysis::Type* GetVariableType(const Instruction& variable) const;
123 SpvStorageClass GetStorageClass(const Instruction& variable) const;
128 void FindUses(const Instruction* inst, std::vector<Instruction*>* uses,
133 void FindUsesOfImage(const Instruction* image,
134 std::vector<Instruction*>* uses) const;
138 Instruction* CreateImageExtraction(Instruction* sampled_image);
149 Instruction* image_variable,
154 uint32_t GetSampledImageTypeForImage(Instruction* image_variable);
[all …]
Dbasic_block.h49 inline explicit BasicBlock(std::unique_ptr<Instruction> label);
69 inline void AddInstruction(std::unique_ptr<Instruction> i);
75 std::unique_ptr<Instruction>& GetLabel() { return label_; } in GetLabel()
78 Instruction* GetLabelInst() { return label_.get(); } in GetLabelInst()
79 const Instruction* GetLabelInst() const { return label_.get(); } in GetLabelInst()
83 const Instruction* GetMergeInst() const;
84 Instruction* GetMergeInst();
88 const Instruction* GetLoopMergeInst() const;
89 Instruction* GetLoopMergeInst();
135 inline void ForEachInst(const std::function<void(Instruction*)>& f,
[all …]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/FuzzMutate/
DOperations.cpp19 Ops.push_back(binOpDescriptor(1, Instruction::Add)); in describeFuzzerIntOps()
20 Ops.push_back(binOpDescriptor(1, Instruction::Sub)); in describeFuzzerIntOps()
21 Ops.push_back(binOpDescriptor(1, Instruction::Mul)); in describeFuzzerIntOps()
22 Ops.push_back(binOpDescriptor(1, Instruction::SDiv)); in describeFuzzerIntOps()
23 Ops.push_back(binOpDescriptor(1, Instruction::UDiv)); in describeFuzzerIntOps()
24 Ops.push_back(binOpDescriptor(1, Instruction::SRem)); in describeFuzzerIntOps()
25 Ops.push_back(binOpDescriptor(1, Instruction::URem)); in describeFuzzerIntOps()
26 Ops.push_back(binOpDescriptor(1, Instruction::Shl)); in describeFuzzerIntOps()
27 Ops.push_back(binOpDescriptor(1, Instruction::LShr)); in describeFuzzerIntOps()
28 Ops.push_back(binOpDescriptor(1, Instruction::AShr)); in describeFuzzerIntOps()
[all …]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/include/llvm/IR/
DNoFolder.h41 Instruction *CreateAdd(Constant *LHS, Constant *RHS,
49 Instruction *CreateNSWAdd(Constant *LHS, Constant *RHS) const { in CreateNSWAdd()
53 Instruction *CreateNUWAdd(Constant *LHS, Constant *RHS) const { in CreateNUWAdd()
57 Instruction *CreateFAdd(Constant *LHS, Constant *RHS) const { in CreateFAdd()
61 Instruction *CreateSub(Constant *LHS, Constant *RHS,
69 Instruction *CreateNSWSub(Constant *LHS, Constant *RHS) const { in CreateNSWSub()
73 Instruction *CreateNUWSub(Constant *LHS, Constant *RHS) const { in CreateNUWSub()
77 Instruction *CreateFSub(Constant *LHS, Constant *RHS) const { in CreateFSub()
81 Instruction *CreateMul(Constant *LHS, Constant *RHS,
89 Instruction *CreateNSWMul(Constant *LHS, Constant *RHS) const { in CreateNSWMul()
[all …]
DInstruction.h39 template <> struct ilist_alloc_traits<Instruction> {
40 static inline void deleteNode(Instruction *V);
43 class Instruction : public User,
44 public ilist_node_with_parent<Instruction, BasicBlock> {
55 ~Instruction(); // Use deleteValue() to delete a generic Instruction.
58 Instruction(const Instruction &) = delete;
59 Instruction &operator=(const Instruction &) = delete;
63 Instruction *user_back() { return cast<Instruction>(*user_begin());}
64 const Instruction *user_back() const { return cast<Instruction>(*user_begin());}
77 static_cast<const Instruction *>(this)->getModule());
[all …]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Target/XCore/
DXCoreLowerThreadLocal.cpp77 static Instruction *
78 createReplacementInstr(ConstantExpr *CE, Instruction *Instr) { in createReplacementInstr()
82 case Instruction::GetElementPtr: { in createReplacementInstr()
85 return dyn_cast<Instruction>(Builder.CreateInBoundsGEP( in createReplacementInstr()
89 case Instruction::Add: in createReplacementInstr()
90 case Instruction::Sub: in createReplacementInstr()
91 case Instruction::Mul: in createReplacementInstr()
92 case Instruction::UDiv: in createReplacementInstr()
93 case Instruction::SDiv: in createReplacementInstr()
94 case Instruction::FDiv: in createReplacementInstr()
[all …]
/third_party/skia/third_party/externals/swiftshader/third_party/SPIRV-Tools/source/val/
Dvalidate.h32 class Instruction; variable
54 spv_result_t UpdateIdUse(ValidationState_t& _, const Instruction* inst);
94 spv_result_t MemoryPass(ValidationState_t& _, const Instruction* inst);
115 spv_result_t ModuleLayoutPass(ValidationState_t& _, const Instruction* inst);
118 spv_result_t CfgPass(ValidationState_t& _, const Instruction* inst);
121 spv_result_t ControlFlowPass(ValidationState_t& _, const Instruction* inst);
124 spv_result_t IdPass(ValidationState_t& _, Instruction* inst);
127 spv_result_t InstructionPass(ValidationState_t& _, const Instruction* inst);
137 spv_result_t TypePass(ValidationState_t& _, const Instruction* inst);
140 spv_result_t ConstantPass(ValidationState_t& _, const Instruction* inst);
[all …]
/third_party/skia/third_party/externals/spirv-tools/source/val/
Dvalidate.h32 class Instruction; variable
54 spv_result_t UpdateIdUse(ValidationState_t& _, const Instruction* inst);
94 spv_result_t MemoryPass(ValidationState_t& _, const Instruction* inst);
115 spv_result_t ModuleLayoutPass(ValidationState_t& _, const Instruction* inst);
118 spv_result_t CfgPass(ValidationState_t& _, const Instruction* inst);
121 spv_result_t ControlFlowPass(ValidationState_t& _, const Instruction* inst);
124 spv_result_t IdPass(ValidationState_t& _, Instruction* inst);
127 spv_result_t InstructionPass(ValidationState_t& _, const Instruction* inst);
137 spv_result_t TypePass(ValidationState_t& _, const Instruction* inst);
140 spv_result_t ConstantPass(ValidationState_t& _, const Instruction* inst);
[all …]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Scalar/
DSpeculativeExecution.cpp212 static unsigned ComputeSpeculationCost(const Instruction *I, in ComputeSpeculationCost()
215 case Instruction::GetElementPtr: in ComputeSpeculationCost()
216 case Instruction::Add: in ComputeSpeculationCost()
217 case Instruction::Mul: in ComputeSpeculationCost()
218 case Instruction::And: in ComputeSpeculationCost()
219 case Instruction::Or: in ComputeSpeculationCost()
220 case Instruction::Select: in ComputeSpeculationCost()
221 case Instruction::Shl: in ComputeSpeculationCost()
222 case Instruction::Sub: in ComputeSpeculationCost()
223 case Instruction::LShr: in ComputeSpeculationCost()
[all …]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Target/SystemZ/
DSystemZTargetTransformInfo.cpp81 case Instruction::GetElementPtr: in getIntImmCostInst()
88 case Instruction::Store: in getIntImmCostInst()
98 case Instruction::ICmp: in getIntImmCostInst()
108 case Instruction::Add: in getIntImmCostInst()
109 case Instruction::Sub: in getIntImmCostInst()
119 case Instruction::Mul: in getIntImmCostInst()
126 case Instruction::Or: in getIntImmCostInst()
127 case Instruction::Xor: in getIntImmCostInst()
137 case Instruction::And: in getIntImmCostInst()
155 case Instruction::Shl: in getIntImmCostInst()
[all …]

12345678910>>...73