/illumos-gate/usr/src/tools/smatch/src/ |
H A D | simplify.c | 314 if (!insn || !insn->bb) in kill_insn() 1197 if (dead_insn(insn, &insn->src1, &insn->src2, NULL)) in simplify_binop() 1206 if (insn->src1 == insn->src2) in simplify_binop() 1238 switch_pseudo(insn, &insn->src1, insn, &insn->src2); in canonicalize_commutative() 1247 switch_pseudo(insn, &insn->src1, insn, &insn->src2); in canonicalize_compare() 1550 if (dead_insn(insn, &insn->src1, &insn->src2, &insn->src3)) in simplify_select() 1639 insert_branch(insn->bb, insn, cond->value ? insn->bb_true : insn->bb_false); in simplify_branch() 1671 insert_branch(insn->bb, insn, insn->bb_false); in simplify_branch() 1675 insert_branch(insn->bb, insn, insn->bb_true); in simplify_branch() 1680 insn->bb_true = insn->bb_false; in simplify_branch() [all …]
|
H A D | ir.c | 35 if (bb_list_size(insn->bb->parents) != nbr_phi_operands(insn)) { in check_phi_node() 39 info(insn->pos, "phisrcs: %d", nbr_phi_operands(insn)); in check_phi_node() 128 err += check_user(insn, insn->src3); in validate_insn() 132 err += check_user(insn, insn->src2); in validate_insn() 139 err += check_user(insn, insn->src1); in validate_insn() 143 err += check_branch(ep, insn, insn->bb_true); in validate_insn() 144 err += check_branch(ep, insn, insn->bb_false); in validate_insn() 147 err += check_user(insn, insn->cond); in validate_insn() 159 err += check_user(insn, insn->target); in validate_insn() 163 err += check_user(insn, insn->src); in validate_insn() [all …]
|
H A D | ssa.c | 81 if (insn == a) in insn_before() 83 if (insn == b) in insn_before() 93 insn->bb = NULL; in kill_store() 106 if (!insn->bb || insn->src != addr) in rewrite_local_var() 118 kill_store(insn); in rewrite_local_var() 130 struct instruction *insn = pu->insn; in rewrite_single_store() local 203 struct instruction *insn = pu->insn; in ssa_convert_one_var() local 209 store = insn; in ssa_convert_one_var() 278 addr = insn->src; in ssa_rename_insn() 314 if (!insn->bb) in ssa_rename_insns() [all …]
|
H A D | flow.c | 60 if (insn->opcode == OP_SYMADDR && insn->target == pseudo) in pseudo_truth_value() 95 if (!insn->bb) in bb_depends_on_phi() 167 if (!insn->bb) in bb_has_side_effects() 175 if (!insn->type) in bb_has_side_effects() 221 if (!insn || insn->opcode != OP_CBR || insn->cond != br->cond) in simplify_branch_branch() 228 final = bb_true ? insn->bb_true : insn->bb_false; in simplify_branch_branch() 438 if (!insn->bb) in kill_dead_stores_bb() 510 struct instruction *insn = pu->insn; in kill_dead_stores() local 558 if (!insn->bb) in kill_bb() 602 if (!insn) in rewrite_parent_branch() [all …]
|
H A D | memops.c | 34 if (one == insn) in find_dominating_parents() 69 struct instruction *insn = pu->insn; in address_taken() local 70 if (insn->bb && (insn->opcode != OP_LOAD && insn->opcode != OP_STORE)) in address_taken() 87 struct instruction *insn; in simplify_loads() local 90 if (!insn->bb) in simplify_loads() 100 check_access(insn); in simplify_loads() 102 if (insn->is_volatile) in simplify_loads() 151 struct instruction *insn; in kill_dominated_stores() local 154 if (!insn->bb) in kill_dominated_stores() 161 if (!insn->type) in kill_dominated_stores() [all …]
|
H A D | sparse-llvm.c | 223 if (insn->type) in insn_symbol_type() 539 lhs = get_ioperand(fn, insn->type, insn->src1); in output_op_binary() 540 rhs = get_ioperand(fn, insn->type, insn->src2); in output_op_binary() 694 src = pseudo_to_value(fn, insn->type, insn->src); in calc_memop_addr() 760 src2 = get_operand(fn, insn->type, insn->src2); in output_op_sel() 761 src3 = get_operand(fn, insn->type, insn->src3); in output_op_sel() 783 sw_val = get_ioperand(fn, insn->type, insn->cond); in output_op_switch() 835 v = get_operand(fn, insn->type, insn->phi_src); in output_op_phisrc() 1070 src = pseudo_to_value(fn, insn->type, insn->src); in output_insn() 1084 src = pseudo_to_value(fn, insn->type, insn->src); in output_insn() [all …]
|
H A D | sparse.c | 46 struct instruction *insn; in context_increase() local 50 if (!insn->bb) in context_increase() 54 val = insn->increment; in context_increase() 55 if (insn->check) { in context_increase() 66 } END_FOR_EACH_PTR(insn); in context_increase() 83 struct instruction *insn; in check_children() local 87 if (!insn) in check_children() 123 int new = insn->size; in check_cast_instruction() 179 check_byte_count(insn, argument(insn, 3)); in check_memset() 218 switch (insn->opcode) { in check_one_instruction() [all …]
|
H A D | graph.c | 47 struct instruction *insn; in graph_ep() local 76 FOR_EACH_PTR(bb->insns, insn) { in graph_ep() 77 if (!insn->bb) in graph_ep() 79 switch(insn->opcode) { in graph_ep() 99 } END_FOR_EACH_PTR(insn); in graph_ep() 123 struct instruction *insn; in graph_calls() local 134 FOR_EACH_PTR(bb->insns, insn) { in graph_calls() 135 if (!insn->bb) in graph_calls() 153 insn->pos.line, insn->pos.line, insn->pos.pos); in graph_calls() 158 insn->pos.line, insn->pos.line, insn->pos.pos); in graph_calls() [all …]
|
H A D | cse.c | 42 hash = (insn->opcode << 3) + (insn->size >> 3); in cse_collect() 43 switch (insn->opcode) { in cse_collect() 45 hash += hashval(insn->src3); in cse_collect() 95 if (!insn->orig_type || insn->orig_type->bit_size < 0) in cse_collect() 268 kill_instruction(insn); in cse_one_instruction() 295 insn->bb = bb; in add_instruction_to_end() 318 if (insn == i1) in try_to_cse() 320 if (insn == i2) in try_to_cse() 359 if (!insn->bb) in cse_eliminate() 363 insn = try_to_cse(ep, last, insn); in cse_eliminate() [all …]
|
H A D | liveness.c | 55 switch (insn->opcode) { in track_instruction_usage() 100 phi_defines(insn, insn->target, def); in track_instruction_usage() 113 if (insn->target != VOID) in track_instruction_usage() 210 if (!insn->bb) in track_pseudo_liveness() 212 assert(insn->bb == bb); in track_pseudo_liveness() 265 struct instruction *insn; in track_bb_phi_uses() local 267 if (insn->bb && insn->opcode == OP_PHI) in track_bb_phi_uses() 268 track_phi_uses(insn); in track_bb_phi_uses() 269 } END_FOR_EACH_PTR(insn); in track_bb_phi_uses() 291 struct instruction *insn; in track_pseudo_death_bb() local [all …]
|
H A D | linearize.c | 334 if (insn->src && insn->src != VOID) in show_instruction() 462 show_pseudo(insn->src1), show_pseudo(insn->src2), show_pseudo(insn->src3)); in show_instruction() 1065 use_pseudo(insn, left, &insn->src1); in add_binary_op() 1066 use_pseudo(insn, right, &insn->src2); in add_binary_op() 1172 use_pseudo(insn, src, &insn->src1); in add_unop() 1194 use_pseudo(insn, pre, &insn->base); in linearize_slice() 1399 use_pseudo(insn, src, &insn->src); in cast_pseudo() 1521 use_pseudo(insn, call, &insn->func); in linearize_call_expression() 1606 use_pseudo(insn, cond, &insn->src1); in linearize_select() 1607 use_pseudo(insn, valt, &insn->src2); in linearize_select() [all …]
|
H A D | example.c | 903 do_binop(state, insn, insn->src1, insn->src2); in generate_binop() 927 src1 = insn->src1; in generate_commutative_binop() 981 …output_insn(state, "mov.%d %s,%s", insn->size, reg_or_imm(state, insn->target), address(state, ins… in generate_store() 1019 struct hardreg *src = getreg(state, insn->src, insn->target); in generate_copy() 1026 struct hardreg *src = getreg(state, insn->src, insn->target); in generate_cast() 1131 if (insn->target && insn->target != VOID) in generate_call() 1143 src2 = getreg(state, insn->src3, insn->target); in generate_select() 1330 if (insn->asm_rules->outputs || insn->asm_rules->inputs) { in generate_asm() 1353 src = getreg(state, insn->src1, insn->target); in generate_compare() 1707 if (!insn->bb) in generate() [all …]
|
H A D | unssa.c | 56 use_pseudo(pu->insn, tmp, pu->userp); in simplify_phi_node() 94 struct instruction *insn; in replace_phi_node() local 96 insn = src->def; in replace_phi_node() 97 if (!insn) in replace_phi_node() 99 insn->target = tmp; in replace_phi_node() 119 struct instruction *insn; in rewrite_phi_bb() local 124 FOR_EACH_PTR(bb->insns, insn) { in rewrite_phi_bb() 125 if (!insn->bb) in rewrite_phi_bb() 127 if (insn->opcode != OP_PHI) in rewrite_phi_bb() 129 replace_phi_node(insn); in rewrite_phi_bb() [all …]
|
H A D | flow.h | 22 extern void convert_instruction_target(struct instruction *insn, pseudo_t src); 32 static inline int kill_instruction(struct instruction *insn) in kill_instruction() argument 34 return kill_insn(insn, 0); in kill_instruction() 36 static inline int kill_instruction_force(struct instruction *insn) in kill_instruction_force() argument 38 return kill_insn(insn, 1); in kill_instruction_force() 41 void check_access(struct instruction *insn); 44 int dominates(pseudo_t pseudo, struct instruction *insn, struct instruction *dom, int local);
|
H A D | linearize.h | 15 struct instruction *insn; member 191 static inline void add_instruction(struct instruction_list **list, struct instruction *insn) in add_instruction() argument 193 add_ptr_list(list, insn); in add_instruction() 218 struct instruction *insn; in bb_terminated() local 221 insn = last_instruction(bb->insns); in bb_terminated() 222 return insn && insn->opcode >= OP_TERMINATOR in bb_terminated() 223 && insn->opcode <= OP_TERMINATOR_END; in bb_terminated() 276 user->insn = insn; in alloc_pseudo_user() 280 static inline void use_pseudo(struct instruction *insn, pseudo_t p, pseudo_t *pp) in use_pseudo() argument 284 add_pseudo_user_ptr(alloc_pseudo_user(insn, pp), &p->users); in use_pseudo() [all …]
|
H A D | optimize.c | 35 struct instruction *insn; in clean_up_insns() local 36 FOR_EACH_PTR(bb->insns, insn) { in clean_up_insns() 37 repeat_phase |= simplify_instruction(insn); in clean_up_insns() 38 if (!insn->bb) in clean_up_insns() 40 assert(insn->bb == bb); in clean_up_insns() 41 cse_collect(insn); in clean_up_insns() 42 } END_FOR_EACH_PTR(insn); in clean_up_insns()
|
H A D | test-unssa.c | 12 struct instruction *insn; in output_bb() local 17 FOR_EACH_PTR(bb->insns, insn) { in output_bb() 18 if (!insn->bb) in output_bb() 20 printf("\t%s\n", show_instruction(insn)); in output_bb() 22 END_FOR_EACH_PTR(insn); in output_bb()
|
H A D | compile-i386.c | 174 char insn[32]; member 626 static void insn(const char *insn, struct storage *op1, struct storage *op2, in insn() argument 632 assert(insn != NULL); in insn() 634 strcpy(atom->insn, insn); in insn() 732 atom->insn, in emit_insn_atom() 886 insn("ret", NULL, NULL, NULL); in emit_func_post() 1191 insn("mov", src, dest, NULL); in emit_move() 1295 insn("movl", val, new, NULL); in emit_value() 1426 insn(opstr, src, dest, NULL); in emit_binop() 1449 insn("test", reg, reg, NULL); in emit_conditional_test() [all …]
|
H A D | storage.c | 271 struct instruction *insn; in combine_phi_storage() local 272 FOR_EACH_PTR(bb->insns, insn) { in combine_phi_storage() 276 if (!insn->bb || insn->opcode != OP_PHISOURCE) in combine_phi_storage() 279 FOR_EACH_PTR(insn->phi_users, phi) { in combine_phi_storage() 289 PACK_PTR_LIST(&insn->phi_users); in combine_phi_storage() 290 } END_FOR_EACH_PTR(insn); in combine_phi_storage()
|
H A D | cse.h | 8 void cse_collect(struct instruction *insn);
|
/illumos-gate/usr/src/cmd/sgs/rtld/sparcv9/ |
H A D | boot_elf.S | 214 sethi %hi(M_SETHI_L0), %o4 ! Get "sethi 0x0, %l0" insn 220 sethi %hi(M_SETHI_L1), %o4 ! Get "sethi 0x0, %l1" insn 225 sethi %hi(M_OR_L0L0), %o4 ! Get "or %l0, 0x0, %l0" insn 237 sethi %hi(M_OR_L0L1L0), %o4 ! get "or %l0, %l1, %l0" insn 248 sethi %hi(M_MOV_G1O0), %o4 ! get "mov %g1, %o0" insn 406 sethi %hi(M_JMPL_G1G0), %o3 ! Get "jmpl %g1, %g0" insn 417 sethi %hi(M_SETHI_G5), %o3 ! Get "sethi 0x0, %g5" insn 457 setuw M_JMPL_G1G0, %o3 ! Get "jmpl %g1, %g0" insn 527 sethi %hi(M_OR_G1G1), %o3 ! Get "or %g1, 0x0, %g1" insn 534 sethi %hi(M_SETHI_G5), %o3 ! Get "sethi 0x0, %g5" insn [all …]
|
/illumos-gate/usr/src/lib/libm/common/C/ |
H A D | libm.h | 165 #define PIC_G_LOAD(insn,sym,dst) \ argument 167 insn (%dst),%dst 178 #define PIC_G_LOAD(insn,sym,dst) \ argument 180 insn (%dst),%dst 188 #define PIC_G_LOAD(insn,sym,dst) insn sym,%dst argument
|
/illumos-gate/usr/src/uts/intel/os/ |
H A D | archdep.c | 435 uint32_t insn; in getuserpc() local 446 if (fuword32((void *)(upc - 2), &insn) != -1 && in getuserpc() 447 (insn & 0xffff) == 0x340f || (insn & 0xffff) == 0x050f) in getuserpc()
|