/external/mesa3d/src/compiler/glsl/ |
ir_validate.cpp | 27 * Attempts to verify that various invariants of the IR tree are true. 31 * in the ir tree. ir_variable does appear multiple times: Once as a 36 #include "ir.h" 63 virtual ir_visitor_status visit(ir_dereference_variable *ir); 65 virtual ir_visitor_status visit_enter(ir_discard *ir); 66 virtual ir_visitor_status visit_enter(ir_if *ir); 68 virtual ir_visitor_status visit_enter(ir_function *ir); 69 virtual ir_visitor_status visit_leave(ir_function *ir); 70 virtual ir_visitor_status visit_enter(ir_function_signature *ir); 72 virtual ir_visitor_status visit_leave(ir_expression *ir); [all...] |
opt_add_neg_to_sub.h | 27 #include "ir.h" 37 ir_visitor_status visit_leave(ir_expression *ir) 39 if (ir->operation != ir_binop_add) 43 ir_expression *const op = ir->operands[i]->as_expression(); 46 ir->operation = ir_binop_sub; 50 ir->operands[0] = ir->operands[1]; 52 ir->operands[1] = op->operands[0];
|
ir_rvalue_visitor.cpp | 32 #include "ir.h" 38 ir_rvalue_base_visitor::rvalue_visit(ir_expression *ir) 42 for (operand = 0; operand < ir->get_num_operands(); operand++) { 43 handle_rvalue(&ir->operands[operand]); 50 ir_rvalue_base_visitor::rvalue_visit(ir_texture *ir) 52 handle_rvalue(&ir->coordinate); 53 handle_rvalue(&ir->projector); 54 handle_rvalue(&ir->shadow_comparator); 55 handle_rvalue(&ir->offset); 57 switch (ir->op) [all...] |
lower_instructions.cpp | 123 #include "ir.h" 167 void reverse_to_shifts(ir_expression *ir); 168 void find_lsb_to_float_cast(ir_expression *ir); 169 void find_msb_to_float_cast(ir_expression *ir); 170 void imul_high_to_mul(ir_expression *ir); 192 lower_instructions_visitor::sub_to_add_neg(ir_expression *ir) 194 ir->operation = ir_binop_add; 195 ir->operands[1] = new(ir) ir_expression(ir_unop_neg, ir->operands[1]->type [all...] |
ir_hierarchical_visitor.cpp | 24 #include "ir.h" 38 ir_hierarchical_visitor::visit(ir_rvalue *ir) 41 this->callback_enter(ir, this->data_enter); 47 ir_hierarchical_visitor::visit(ir_variable *ir) 50 this->callback_enter(ir, this->data_enter); 56 ir_hierarchical_visitor::visit(ir_constant *ir) 59 this->callback_enter(ir, this->data_enter); 65 ir_hierarchical_visitor::visit(ir_loop_jump *ir) 68 this->callback_enter(ir, this->data_enter); 74 ir_hierarchical_visitor::visit(ir_dereference_variable *ir) [all...] |
ir_expression_flattening.h | 38 bool (*predicate)(ir_instruction *ir));
|
opt_if_simplification.cpp | 32 #include "ir.h" 55 ir_if_simplification_visitor::visit_enter(ir_assignment *ir) 57 (void) ir; 72 ir_if_simplification_visitor::visit_leave(ir_if *ir) 75 if (ir->then_instructions.is_empty() && 76 ir->else_instructions.is_empty()) { 77 ir->remove(); 87 ir_constant *condition_constant = ir->condition->constant_expression_value(); 93 ir->insert_before(&ir->then_instructions) [all...] |
ir_expression_flattening.cpp | 34 #include "ir.h" 40 ir_expression_flattening_visitor(bool (*predicate)(ir_instruction *ir)) 51 bool (*predicate)(ir_instruction *ir); 56 bool (*predicate)(ir_instruction *ir)) 60 foreach_in_list(ir_instruction, ir, instructions) { 61 ir->accept(&v); 70 ir_rvalue *ir = *rvalue; local 72 if (!ir || !this->predicate(ir)) 75 void *ctx = ralloc_parent(ir); [all...] |
lower_discard_flow.cpp | 48 #include "ir.h" 64 ir_visitor_status visit(ir_loop_jump *ir); 65 ir_visitor_status visit_enter(ir_discard *ir); 66 ir_visitor_status visit_enter(ir_loop *ir); 67 ir_visitor_status visit_enter(ir_function_signature *ir); 78 lower_discard_flow_visitor::visit(ir_loop_jump *ir) 80 if (ir->mode != ir_loop_jump::jump_continue) 83 ir->insert_before(generate_discard_break()); 89 lower_discard_flow_visitor::visit_enter(ir_discard *ir) 93 if (ir->condition) [all...] |
opt_conditional_discard.cpp | 37 #include "ir.h" 64 opt_conditional_discard_visitor::visit_leave(ir_if *ir) 67 if (ir->then_instructions.is_empty() || 68 !ir->then_instructions.get_head_raw()->next->is_tail_sentinel() || 69 !((ir_instruction *) ir->then_instructions.get_head_raw())->as_discard() || 70 !ir->else_instructions.is_empty()) 74 ir_discard *discard = (ir_discard *) ir->then_instructions.get_head_raw(); 76 discard->condition = ir->condition; 78 void *ctx = ralloc_parent(ir); 80 ir->condition [all...] |
lower_texture_projection.cpp | 27 * IR lower pass to perform the division of texture coordinates by the texture 32 * in the IR. For GPUs that don't, this saves the driver needing the 38 #include "ir.h" 49 ir_visitor_status visit_leave(ir_texture *ir); 57 lower_texture_projection_visitor::visit_leave(ir_texture *ir) 59 if (!ir->projector) 62 void *mem_ctx = ralloc_parent(ir); 64 ir_variable *var = new(mem_ctx) ir_variable(ir->projector->type, 69 ir->projector->type, 70 ir->projector [all...] |
lower_vector_derefs.cpp | 23 #include "ir.h" 44 virtual ir_visitor_status visit_enter(ir_assignment *ir); 52 vector_deref_visitor::visit_enter(ir_assignment *ir) 54 if (!ir->lhs || ir->lhs->ir_type != ir_type_dereference_array) 55 return ir_rvalue_enter_visitor::visit_enter(ir); 57 ir_dereference_array *const deref = (ir_dereference_array *) ir->lhs; 59 return ir_rvalue_enter_visitor::visit_enter(ir); 62 ir->set_lhs(new_lhs); 65 void *mem_ctx = ralloc_parent(ir); [all...] |
opt_swizzle_swizzle.cpp | 30 #include "ir.h" 52 ir_swizzle_swizzle_visitor::visit_enter(ir_swizzle *ir) 56 ir_swizzle *swiz2 = ir->val->as_swizzle(); 70 if (ir->mask.num_components >= 1) 71 ir->mask.x = mask2[ir->mask.x]; 72 if (ir->mask.num_components >= 2) 73 ir->mask.y = mask2[ir->mask.y]; 74 if (ir->mask.num_components >= 3 [all...] |
opt_tree_grafting.cpp | 50 #include "ir.h" 81 ir_visitor_status check_graft(ir_instruction *ir, ir_variable *var); 96 dereferences_variable_callback(ir_instruction *ir, void *data) 99 ir_dereference_variable *deref = ir->as_dereference_variable(); 106 dereferences_variable(ir_instruction *ir, ir_variable *var) 113 visit_tree(ir, dereferences_variable_callback, &info); 146 ir_tree_grafting_visitor::visit_enter(ir_loop *ir) 148 (void)ir; 159 * \param ir An instruction that writes to a variable. 163 ir_tree_grafting_visitor::check_graft(ir_instruction *ir, ir_variable *var 210 ir_rvalue *ir = (ir_rvalue *) actual_node; local 350 ir_instruction *ir, *next; local [all...] |
opt_constant_folding.cpp | 29 #include "ir.h" 53 virtual ir_visitor_status visit_enter(ir_discard *ir); 54 virtual ir_visitor_status visit_enter(ir_assignment *ir); 55 virtual ir_visitor_status visit_enter(ir_call *ir); 119 ir_constant_folding_visitor::visit_enter(ir_discard *ir) 121 if (ir->condition) { 122 ir->condition->accept(this); 123 handle_rvalue(&ir->condition); 125 ir_constant *const_val = ir->condition->as_constant(); 131 ir->condition = NULL [all...] |
ir_print_visitor.cpp | 70 foreach_in_list(ir_instruction, ir, instructions) { 71 ir->fprint(f); 72 if (ir->ir_type != ir_type_function) 81 const ir_instruction *ir = (const ir_instruction *)instruction; local 82 ir->fprint(f); 164 void ir_print_visitor::visit(ir_variable *ir) 169 if (ir->data.binding) 170 snprintf(binding, sizeof(binding), "binding=%i ", ir->data.binding); 173 if (ir->data.location != -1) 174 snprintf(loc, sizeof(loc), "location=%i ", ir->data.location) [all...] |
opt_flatten_nested_if_blocks.cpp | 42 #include "ir.h" 68 nested_if_flattener::visit_enter(ir_assignment *ir) 70 (void) ir; 85 nested_if_flattener::visit_leave(ir_if *ir) 90 if (ir->then_instructions.is_empty() || !ir->else_instructions.is_empty()) 93 ir_if *inner = ((ir_instruction *) ir->then_instructions.get_head_raw())->as_if(); 98 ir->condition = logic_and(ir->condition, inner->condition); 99 inner->then_instructions.move_nodes_to(&ir->then_instructions) [all...] |
opt_dead_code_local.cpp | 36 #include "ir.h" 51 assignment_entry(ir_variable *lhs, ir_assignment *ir) 54 assert(ir); 56 this->ir = ir; 57 this->unused = ir->write_mask; 61 ir_assignment *ir; member in class:__anon29237::assignment_entry 94 virtual ir_visitor_status visit(ir_dereference_variable *ir) 96 use_channels(ir->var, ~0); 101 virtual ir_visitor_status visit(ir_swizzle *ir) 300 ir_instruction *ir, *ir_next; local [all...] |
/prebuilts/ndk/r16/sources/third_party/shaderc/third_party/spirv-tools/source/opt/ |
common_uniform_elim_pass.h | 37 using cbb_ptr = const ir::BasicBlock*; 41 std::function<std::vector<ir::BasicBlock*>*(const ir::BasicBlock*)>; 45 Status Process(ir::Module*) override; 53 bool IsSamplerOrImageType(const ir::Instruction* typeInst) const; 59 bool IsLoopHeader(ir::BasicBlock* block_ptr); 64 ir::Instruction* GetPtr(ir::Instruction* ip, uint32_t* objId); 76 void KillNamesAndDecorates(ir::Instruction* inst); 82 void DeleteIfUseless(ir::Instruction* inst) [all...] |
local_single_store_elim_pass.h | 38 using cbb_ptr = const ir::BasicBlock*; 43 Status Process(ir::Module*) override; 56 void SingleStoreAnalyze(ir::Function* func); 59 std::function<const std::vector<ir::BasicBlock*>*(const ir::BasicBlock*)>; 69 void CalculateImmediateDominators(ir::Function* func); 73 bool Dominates(ir::BasicBlock* blk0, uint32_t idx0, 74 ir::BasicBlock* blk1, uint32_t idx1); 80 bool SingleStoreProcess(ir::Function* func); 91 bool LocalSingleStoreElim(ir::Function* func) [all...] |
inline_pass.h | 36 using cbb_ptr = const ir::BasicBlock*; 40 std::function<std::vector<ir::BasicBlock*>*(const ir::BasicBlock*)>; 50 inline void FinalizeNextId(ir::Module* module) { 62 void AddBranch(uint32_t labelId, std::unique_ptr<ir::BasicBlock>* block_ptr); 66 uint32_t false_id, std::unique_ptr<ir::BasicBlock>* block_ptr); 70 std::unique_ptr<ir::BasicBlock>* block_ptr); 74 std::unique_ptr<ir::BasicBlock>* block_ptr); 78 std::unique_ptr<ir::BasicBlock>* block_ptr); 81 std::unique_ptr<ir::Instruction> NewLabel(uint32_t label_id) [all...] |
dead_branch_elim_pass.h | 39 using cbb_ptr = const ir::BasicBlock*; 43 std::function<std::vector<ir::BasicBlock*>*(const ir::BasicBlock*)>; 47 Status Process(ir::Module*) override; 53 uint32_t MergeBlockIdIfAny(const ir::BasicBlock& blk, uint32_t* cbid) const; 63 void ComputeStructuredSuccessors(ir::Function* func); 70 ir::Function* func, std::list<ir::BasicBlock*>* order); 77 void AddBranch(uint32_t labelId, ir::BasicBlock* bp); 80 void AddSelectionMerge(uint32_t labelId, ir::BasicBlock* bp) [all...] |
local_access_chain_convert_pass.h | 41 Status Process(ir::Module*) override; 43 using ProcessFunction = std::function<bool(ir::Function*)>; 53 void FindTargetVars(ir::Function* func); 56 void DeleteIfUseless(ir::Instruction* inst); 59 uint32_t GetPointeeTypeId(const ir::Instruction* ptrInst) const; 64 const std::vector<ir::Operand>& in_opnds, 65 std::vector<std::unique_ptr<ir::Instruction>>* newInsts); 69 uint32_t BuildAndAppendVarLoad(const ir::Instruction* ptrInst, 71 std::vector<std::unique_ptr<ir::Instruction>>* newInsts); 76 void AppendConstantOperands( const ir::Instruction* ptrInst [all...] |
/external/brotli/csharp/org/brotli/dec/ |
IntReader.cs | 15 internal static void Init(Org.Brotli.Dec.IntReader ir, byte[] byteBuffer, int[] intBuffer)
17 ir.byteBuffer = byteBuffer;
18 ir.intBuffer = intBuffer;
27 internal static void Convert(Org.Brotli.Dec.IntReader ir, int intLen)
31 ir.intBuffer[i] = ((ir.byteBuffer[i * 4] & unchecked((int)(0xFF)))) | ((ir.byteBuffer[(i * 4) + 1] & unchecked((int)(0xFF))) << 8) | ((ir.byteBuffer[(i * 4) + 2] & unchecked((int)(0xFF))) << 16) | ((ir.byteBuffer[(i * 4) + 3] & unchecked((int
|
/external/clang/test/CodeGenCXX/ |
lvalue-bitcasts.cpp | 7 void reinterpret_cast_test(int &ir, float &fr, X &xr) { 11 ir = reinterpret_cast<int&>(fr); 15 ir = reinterpret_cast<int&>(xr); 19 fr = reinterpret_cast<float&>(ir); 27 xr = reinterpret_cast<X&>(ir); 38 cfr = reinterpret_cast<_Complex float&>(ir); 52 void c_cast(int &ir, float &fr, X &xr) { 56 ir = (int&)fr; 60 ir = (int&)xr; 64 fr = (float&)ir; [all...] |