Lines Matching refs:instr
50 dt_cg_node_alloc(uint_t label, dif_instr_t instr) in dt_cg_node_alloc() argument
58 dip->di_instr = instr; in dt_cg_node_alloc()
97 dif_instr_t instr = DIF_INSTR_SETX((uint_t)intoff, reg); in dt_cg_xsetx() local
105 dt_irlist_append(dlp, dt_cg_node_alloc(lbl, instr)); in dt_cg_xsetx()
193 dif_instr_t instr; in dt_cg_ptrsize() local
217 instr = DIF_INSTR_FMT(op, dreg, sreg, dreg); in dt_cg_ptrsize()
218 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_ptrsize()
244 dif_instr_t instr; in dt_cg_field_get() local
276 instr = DIF_INSTR_FMT(DIF_OP_SLL, r1, r2, r1); in dt_cg_field_get()
277 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_field_get()
280 instr = DIF_INSTR_FMT(DIF_OP_SRA, r1, r2, r1); in dt_cg_field_get()
281 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_field_get()
290 instr = DIF_INSTR_FMT(DIF_OP_SRL, r1, r2, r1); in dt_cg_field_get()
291 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_field_get()
294 instr = DIF_INSTR_FMT(DIF_OP_AND, r1, r2, r1); in dt_cg_field_get()
295 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_field_get()
328 dif_instr_t instr; in dt_cg_field_set() local
379 instr = DIF_INSTR_LOAD( in dt_cg_field_set()
381 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_field_set()
384 instr = DIF_INSTR_FMT(DIF_OP_AND, r1, r2, r1); in dt_cg_field_set()
385 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_field_set()
388 instr = DIF_INSTR_FMT(DIF_OP_AND, src->dn_reg, r2, r2); in dt_cg_field_set()
389 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_field_set()
392 instr = DIF_INSTR_FMT(DIF_OP_SLL, r2, r3, r2); in dt_cg_field_set()
393 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_field_set()
395 instr = DIF_INSTR_FMT(DIF_OP_OR, r1, r2, r1); in dt_cg_field_set()
396 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_field_set()
408 dif_instr_t instr; in dt_cg_store() local
426 instr = DIF_INSTR_COPYS(src->dn_reg, reg, dst->dn_reg); in dt_cg_store()
427 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_store()
437 instr = DIF_INSTR_STORE(DIF_OP_STB, reg, dst->dn_reg); in dt_cg_store()
440 instr = DIF_INSTR_STORE(DIF_OP_STH, reg, dst->dn_reg); in dt_cg_store()
443 instr = DIF_INSTR_STORE(DIF_OP_STW, reg, dst->dn_reg); in dt_cg_store()
446 instr = DIF_INSTR_STORE(DIF_OP_STX, reg, dst->dn_reg); in dt_cg_store()
452 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_store()
473 dif_instr_t instr; in dt_cg_typecast() local
492 instr = DIF_INSTR_FMT(DIF_OP_SLL, src->dn_reg, rg, dst->dn_reg); in dt_cg_typecast()
493 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_typecast()
496 instr = DIF_INSTR_FMT(DIF_OP_SRA, in dt_cg_typecast()
499 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_typecast()
502 instr = DIF_INSTR_FMT(DIF_OP_SRA, in dt_cg_typecast()
505 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_typecast()
507 instr = DIF_INSTR_FMT(DIF_OP_SRL, in dt_cg_typecast()
510 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_typecast()
517 instr = DIF_INSTR_FMT(DIF_OP_SLL, src->dn_reg, rg, dst->dn_reg); in dt_cg_typecast()
518 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_typecast()
520 instr = DIF_INSTR_FMT((dst->dn_flags & DT_NF_SIGNED) ? in dt_cg_typecast()
522 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_typecast()
555 dif_instr_t instr; in dt_cg_arglist() local
578 instr = DIF_INSTR_PUSHTS(op, t.dtdt_kind, reg, dnp->dn_reg); in dt_cg_arglist()
579 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_arglist()
600 dif_instr_t instr; in dt_cg_arithmetic_op() local
615 instr = DIF_INSTR_FMT(op, dnp->dn_left->dn_reg, in dt_cg_arithmetic_op()
618 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_arithmetic_op()
643 dif_instr_t instr; in dt_cg_prearith_op() local
660 instr = DIF_INSTR_FMT(op, dnp->dn_reg, reg, dnp->dn_reg); in dt_cg_prearith_op()
661 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_prearith_op()
675 instr = DIF_INSTR_STV(dt_cg_stvar(idp), in dt_cg_prearith_op()
677 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_prearith_op()
700 dif_instr_t instr; in dt_cg_postarith_op() local
716 instr = DIF_INSTR_FMT(op, dnp->dn_reg, nreg, nreg); in dt_cg_postarith_op()
717 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_postarith_op()
730 instr = DIF_INSTR_STV(dt_cg_stvar(idp), idp->di_id, nreg); in dt_cg_postarith_op()
731 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_postarith_op()
782 dif_instr_t instr; in dt_cg_compare_op() local
793 instr = DIF_INSTR_CMP(opc, dnp->dn_left->dn_reg, dnp->dn_right->dn_reg); in dt_cg_compare_op()
794 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_compare_op()
798 instr = DIF_INSTR_BRANCH(op, lbl_true); in dt_cg_compare_op()
799 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_compare_op()
801 instr = DIF_INSTR_MOV(DIF_REG_R0, dnp->dn_reg); in dt_cg_compare_op()
802 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_compare_op()
804 instr = DIF_INSTR_BRANCH(DIF_OP_BA, lbl_post); in dt_cg_compare_op()
805 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_compare_op()
827 dif_instr_t instr; in dt_cg_ternary_op() local
831 instr = DIF_INSTR_TST(dnp->dn_expr->dn_reg); in dt_cg_ternary_op()
832 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_ternary_op()
835 instr = DIF_INSTR_BRANCH(DIF_OP_BE, lbl_false); in dt_cg_ternary_op()
836 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_ternary_op()
839 instr = DIF_INSTR_MOV(dnp->dn_left->dn_reg, DIF_REG_R0); in dt_cg_ternary_op()
840 dip = dt_cg_node_alloc(DT_LBL_NONE, instr); /* save dip for below */ in dt_cg_ternary_op()
844 instr = DIF_INSTR_BRANCH(DIF_OP_BA, lbl_post); in dt_cg_ternary_op()
845 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_ternary_op()
866 dif_instr_t instr; in dt_cg_logical_and() local
869 instr = DIF_INSTR_TST(dnp->dn_left->dn_reg); in dt_cg_logical_and()
870 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_and()
873 instr = DIF_INSTR_BRANCH(DIF_OP_BE, lbl_false); in dt_cg_logical_and()
874 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_and()
877 instr = DIF_INSTR_TST(dnp->dn_right->dn_reg); in dt_cg_logical_and()
878 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_and()
881 instr = DIF_INSTR_BRANCH(DIF_OP_BE, lbl_false); in dt_cg_logical_and()
882 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_and()
886 instr = DIF_INSTR_BRANCH(DIF_OP_BA, lbl_post); in dt_cg_logical_and()
887 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_and()
889 instr = DIF_INSTR_MOV(DIF_REG_R0, dnp->dn_reg); in dt_cg_logical_and()
890 dt_irlist_append(dlp, dt_cg_node_alloc(lbl_false, instr)); in dt_cg_logical_and()
901 dif_instr_t instr; in dt_cg_logical_xor() local
904 instr = DIF_INSTR_TST(dnp->dn_left->dn_reg); in dt_cg_logical_xor()
905 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_xor()
907 instr = DIF_INSTR_BRANCH(DIF_OP_BE, lbl_next); in dt_cg_logical_xor()
908 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_xor()
914 instr = DIF_INSTR_TST(dnp->dn_right->dn_reg); in dt_cg_logical_xor()
915 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_xor()
917 instr = DIF_INSTR_BRANCH(DIF_OP_BE, lbl_tail); in dt_cg_logical_xor()
918 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_xor()
921 instr = DIF_INSTR_FMT(DIF_OP_XOR, dnp->dn_left->dn_reg, in dt_cg_logical_xor()
924 dt_irlist_append(dlp, dt_cg_node_alloc(lbl_tail, instr)); in dt_cg_logical_xor()
937 dif_instr_t instr; in dt_cg_logical_or() local
940 instr = DIF_INSTR_TST(dnp->dn_left->dn_reg); in dt_cg_logical_or()
941 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_or()
944 instr = DIF_INSTR_BRANCH(DIF_OP_BNE, lbl_true); in dt_cg_logical_or()
945 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_or()
948 instr = DIF_INSTR_TST(dnp->dn_right->dn_reg); in dt_cg_logical_or()
949 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_or()
952 instr = DIF_INSTR_BRANCH(DIF_OP_BE, lbl_false); in dt_cg_logical_or()
953 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_or()
957 instr = DIF_INSTR_BRANCH(DIF_OP_BA, lbl_post); in dt_cg_logical_or()
958 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_or()
960 instr = DIF_INSTR_MOV(DIF_REG_R0, dnp->dn_reg); in dt_cg_logical_or()
961 dt_irlist_append(dlp, dt_cg_node_alloc(lbl_false, instr)); in dt_cg_logical_or()
972 dif_instr_t instr; in dt_cg_logical_neg() local
977 instr = DIF_INSTR_TST(dnp->dn_reg); in dt_cg_logical_neg()
978 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_neg()
980 instr = DIF_INSTR_BRANCH(DIF_OP_BE, lbl_zero); in dt_cg_logical_neg()
981 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_neg()
983 instr = DIF_INSTR_MOV(DIF_REG_R0, dnp->dn_reg); in dt_cg_logical_neg()
984 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_neg()
986 instr = DIF_INSTR_BRANCH(DIF_OP_BA, lbl_post); in dt_cg_logical_neg()
987 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_logical_neg()
996 dif_instr_t instr; in dt_cg_asgn_op() local
1036 instr = DIF_INSTR_ALLOCS(r1, r1); in dt_cg_asgn_op()
1037 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_asgn_op()
1085 instr = DIF_INSTR_FMT(DIF_OP_ADD, r1, r2, r2); in dt_cg_asgn_op()
1087 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_asgn_op()
1131 instr = DIF_INSTR_STV(dt_cg_stvar(idp), in dt_cg_asgn_op()
1133 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_asgn_op()
1154 dif_instr_t instr; in dt_cg_assoc_op() local
1171 instr = DIF_INSTR_LDV(op, dnp->dn_ident->di_id, dnp->dn_reg); in dt_cg_assoc_op()
1172 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_assoc_op()
1203 instr = DIF_INSTR_TST(dnp->dn_reg); in dt_cg_assoc_op()
1204 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_assoc_op()
1206 instr = DIF_INSTR_BRANCH(DIF_OP_BNE, label); in dt_cg_assoc_op()
1207 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_assoc_op()
1210 instr = DIF_INSTR_ALLOCS(dnp->dn_reg, dnp->dn_reg); in dt_cg_assoc_op()
1211 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_assoc_op()
1214 instr = DIF_INSTR_STV(stvop, dnp->dn_ident->di_id, dnp->dn_reg); in dt_cg_assoc_op()
1215 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_assoc_op()
1217 instr = DIF_INSTR_LDV(op, dnp->dn_ident->di_id, dnp->dn_reg); in dt_cg_assoc_op()
1218 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_assoc_op()
1231 dif_instr_t instr; in dt_cg_array_op() local
1271 instr = DIF_INSTR_LDA(op, idp->di_id, in dt_cg_array_op()
1274 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_array_op()
1299 instr = DIF_INSTR_FMT(DIF_OP_SLL, dnp->dn_reg, reg, dnp->dn_reg); in dt_cg_array_op()
1300 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_array_op()
1302 instr = DIF_INSTR_FMT((dnp->dn_flags & DT_NF_SIGNED) ? in dt_cg_array_op()
1305 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_array_op()
1377 uint32_t instr; in dt_cg_xlate_member() local
1402 instr = DIF_INSTR_FMT(DIF_OP_ADD, dx->dtxl_dreg, reg, reg); in dt_cg_xlate_member()
1403 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_xlate_member()
1413 instr = DIF_INSTR_STORE(DIF_OP_STB, treg, reg); in dt_cg_xlate_member()
1416 instr = DIF_INSTR_STORE(DIF_OP_STH, treg, reg); in dt_cg_xlate_member()
1419 instr = DIF_INSTR_STORE(DIF_OP_STW, treg, reg); in dt_cg_xlate_member()
1422 instr = DIF_INSTR_STORE(DIF_OP_STX, treg, reg); in dt_cg_xlate_member()
1429 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_xlate_member()
1439 instr = DIF_INSTR_COPYS(treg, szreg, reg); in dt_cg_xlate_member()
1440 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_xlate_member()
1452 instr = DIF_INSTR_PUSHTS(DIF_OP_PUSHTV, DIF_TYPE_CTF, in dt_cg_xlate_member()
1454 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_xlate_member()
1455 instr = DIF_INSTR_PUSHTS(DIF_OP_PUSHTV, DIF_TYPE_CTF, in dt_cg_xlate_member()
1457 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_xlate_member()
1458 instr = DIF_INSTR_PUSHTS(DIF_OP_PUSHTV, DIF_TYPE_CTF, in dt_cg_xlate_member()
1460 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_xlate_member()
1461 instr = DIF_INSTR_CALL(DIF_SUBR_BCOPY, szreg); in dt_cg_xlate_member()
1462 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_xlate_member()
1481 uint32_t instr; in dt_cg_xlate_expand() local
1493 instr = DIF_INSTR_PUSHTS(DIF_OP_PUSHTV, DIF_TYPE_CTF, DIF_REG_R0, dreg); in dt_cg_xlate_expand()
1494 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_xlate_expand()
1496 instr = DIF_INSTR_CALL(DIF_SUBR_ALLOCA, dreg); in dt_cg_xlate_expand()
1497 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_xlate_expand()
1520 dif_instr_t instr; in dt_cg_node() local
1686 instr = DIF_INSTR_NOT(dnp->dn_reg, dnp->dn_reg); in dt_cg_node()
1687 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
1715 instr = DIF_INSTR_FMT(DIF_OP_SUB, DIF_REG_R0, in dt_cg_node()
1718 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
1745 instr = DIF_INSTR_LOAD(dt_cg_load(dnp, ctfp, in dt_cg_node()
1752 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
1798 instr = DIF_INSTR_MOV( in dt_cg_node()
1801 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
1806 instr = DIF_INSTR_XLATE(op, 0, dnp->dn_reg); in dt_cg_node()
1808 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
1890 instr = DIF_INSTR_FMT(DIF_OP_ADD, in dt_cg_node()
1894 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
1909 instr = DIF_INSTR_LOAD(dt_cg_load(dnp, in dt_cg_node()
1917 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
1937 instr = DIF_INSTR_SETS((ulong_t)stroff, dnp->dn_reg); in dt_cg_node()
1938 dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
1951 instr = DIF_INSTR_MOV(dnp->dn_ident->di_id, in dt_cg_node()
1954 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
1981 instr = DIF_INSTR_CALL(dnp->dn_ident->di_id, in dt_cg_node()
1985 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
2020 instr = DIF_INSTR_LDV(op, in dt_cg_node()
2024 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
2044 instr = DIF_INSTR_LOAD(dt_cg_load(dnp, ctfp, in dt_cg_node()
2047 dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg_node()
2072 dif_instr_t instr; in dt_cg() local
2127 instr = DIF_INSTR_RET(dnp->dn_reg); in dt_cg()
2129 dt_irlist_append(&pcb->pcb_ir, dt_cg_node_alloc(DT_LBL_NONE, instr)); in dt_cg()