Lines Matching refs:pap

861 print_bitfield(ulong_t off, printarg_t *pap, ctf_encoding_t *ep)
863 mdb_tgt_addr_t addr = pap->pa_addr + off / NBBY;
872 if (!(pap->pa_flags & PA_SHOWVAL))
889 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, buf, size, addr) != size) {
918 if ((pap->pa_flags & PA_INTHEX) ||
920 format = (pap->pa_flags & PA_INTDEC)? "%#llu" : "%#llx";
939 printarg_t *pap)
945 mdb_tgt_addr_t addr = pap->pa_addr + off / NBBY;
958 if (!(pap->pa_flags & PA_SHOWVAL))
972 return (print_bitfield(off, pap, ep));
976 if (mdb_fmt_print(pap->pa_tgt, pap->pa_as,
983 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, &u.i8, size, addr) != size) {
994 if (!(pap->pa_flags & (PA_INTHEX | PA_INTDEC))) {
1009 if (!(pap->pa_flags & PA_INTDEC))
1036 mdb_ctf_id_t base, ulong_t off, printarg_t *pap)
1040 if (!(pap->pa_flags & PA_SHOWVAL))
1048 return (print_int_val(type, &e, off, pap));
1058 mdb_ctf_id_t base, ulong_t off, printarg_t *pap)
1061 mdb_tgt_addr_t addr = pap->pa_addr + off / NBBY;
1070 if (!(pap->pa_flags & PA_SHOWVAL))
1076 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, &u.f,
1085 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, &u.d,
1094 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, &u.ld,
1122 mdb_ctf_id_t base, ulong_t off, printarg_t *pap)
1124 mdb_tgt_addr_t addr = pap->pa_addr + off / NBBY;
1130 if (!(pap->pa_flags & PA_SHOWVAL))
1133 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as,
1139 if (pap->pa_flags & PA_NOSYMBOLIC) {
1153 if ((len = mdb_tgt_readstr(pap->pa_realtgt, pap->pa_as,
1174 mdb_ctf_id_t base, ulong_t off, printarg_t *pap)
1176 mdb_tgt_addr_t addr = pap->pa_addr + off / NBBY;
1177 printarg_t pa = *pap;
1186 if (!(pap->pa_flags & PA_SHOWVAL))
1189 if (pap->pa_depth == pap->pa_maxdepth) {
1210 if ((pap->pa_arstrlim == MDB_ARR_NOLIMIT ||
1211 r.mta_nelems <= pap->pa_arstrlim) &&
1213 mdb_tgt_readstr(pap->pa_tgt, pap->pa_as, buf,
1219 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, str,
1231 if (pap->pa_armemlim != MDB_ARR_NOLIMIT)
1232 limit = MIN(r.mta_nelems, pap->pa_armemlim);
1279 (pap->pa_depth + pap->pa_nest) * pap->pa_tab, "");
1282 (pap->pa_depth + pap->pa_nest) * pap->pa_tab, "");
1287 pap->pa_holes = pa.pa_holes;
1288 pap->pa_nholes = pa.pa_nholes;
1301 mdb_ctf_id_t base, ulong_t off, printarg_t *pap)
1303 mdb_tgt_addr_t addr = pap->pa_addr + off / NBBY;
1309 if (pap->pa_flags & PA_SHOWVAL) {
1314 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, &in6addr,
1325 pap->pa_nooutdepth = pap->pa_depth;
1331 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, &inaddr,
1338 pap->pa_nooutdepth = pap->pa_depth;
1343 if (pap->pa_depth == pap->pa_maxdepth)
1347 pap->pa_delim = "\n";
1358 mdb_ctf_id_t base, ulong_t off, printarg_t *pap)
1360 mdb_tgt_addr_t addr = pap->pa_addr + off / NBBY;
1364 int flags = pap->pa_flags | (isp2 ? PA_INTHEX : 0);
1369 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as,
1403 mdb_ctf_id_t base, ulong_t off, printarg_t *pap)
1407 if (pap->pa_flags & PA_SHOWVAL)
1419 print_hole(printarg_t *pap, int depth, ulong_t off, ulong_t endoff)
1451 print_hole(pap, depth, off, end);
1463 if (pap->pa_flags & (PA_SHOWTYPE | PA_SHOWNAME | PA_SHOWADDR))
1464 mdb_printf("%*s", (depth + pap->pa_nest) * pap->pa_tab, "");
1466 if (pap->pa_flags & PA_SHOWADDR) {
1468 mdb_printf("%llx ", pap->pa_addr + off / NBBY);
1471 pap->pa_addr + off / NBBY, off % NBBY);
1474 if (pap->pa_flags & PA_SHOWTYPE)
1477 if (pap->pa_flags & PA_SHOWNAME)
1480 if (bitfield && (pap->pa_flags & PA_SHOWTYPE))
1483 mdb_printf("%s ", (pap->pa_flags & PA_SHOWVAL)? " =" : "");
1494 if (print_int_val(type, &e, off, pap) != 0)
1497 mdb_iob_puts(mdb.m_out, pap->pa_delim);
1506 print_close_sou(printarg_t *pap, int newdepth)
1508 int d = newdepth + pap->pa_nest;
1510 if ((pap->pa_flags & PA_SHOWHOLES) && !pap->pa_holes[d].hi_isunion) {
1511 ulong_t end = pap->pa_holes[d + 1].hi_offset;
1512 ulong_t expected = pap->pa_holes[d].hi_offset;
1515 print_hole(pap, newdepth + 1, end, expected);
1518 mdb_printf("%*s}%s\n", d * pap->pa_tab, "",
1519 (newdepth == 0 && pap->pa_nest > 0)? "," : "");
1545 printarg_t *pap = data;
1547 for (d = pap->pa_depth - 1; d >= depth; d--) {
1548 if (d < pap->pa_nooutdepth)
1549 print_close_sou(pap, d);
1556 if (depth <= pap->pa_nooutdepth)
1557 pap->pa_nooutdepth = (uint_t)-1;
1559 if (depth > pap->pa_maxdepth || depth > pap->pa_nooutdepth)
1569 if (pap->pa_flags & PA_SHOWBASETYPE) {
1601 if (pap->pa_flags & PA_SHOWHOLES) {
1611 if (pap->pa_nest + depth + extra >= pap->pa_nholes) {
1612 int new = MAX(MAX(8, pap->pa_nholes * 2),
1613 pap->pa_nest + depth + extra + 1);
1618 bcopy(pap->pa_holes, nhi,
1619 pap->pa_nholes * sizeof (*nhi));
1621 pap->pa_holes = nhi;
1622 pap->pa_nholes = new;
1625 hole = &pap->pa_holes[depth + pap->pa_nest];
1628 print_hole(pap, depth, hole->hi_offset, off);
1650 if (pap->pa_flags & (PA_SHOWTYPE | PA_SHOWNAME | PA_SHOWADDR))
1651 mdb_printf("%*s", (depth + pap->pa_nest) * pap->pa_tab, "");
1653 if (pap->pa_flags & PA_SHOWADDR) {
1655 mdb_printf("%llx ", pap->pa_addr + off / NBBY);
1658 pap->pa_addr + off / NBBY, off % NBBY);
1661 if ((pap->pa_flags & PA_SHOWTYPE)) {
1674 (depth == 0 && (!(pap->pa_flags & PA_SHOWNAME) ||
1675 pap->pa_prefix == NULL)))
1679 if (pap->pa_flags & PA_SHOWNAME) {
1680 if (pap->pa_prefix != NULL && depth <= 1)
1681 mdb_printf("%s%s", pap->pa_prefix,
1682 (depth == 0) ? "" : pap->pa_suffix);
1686 if ((pap->pa_flags & PA_SHOWTYPE) && kind == CTF_K_INTEGER) {
1702 ((pap->pa_flags & PA_SHOWNAME) && pap->pa_prefix != NULL))
1703 mdb_printf("%s ", pap->pa_flags & PA_SHOWVAL ? " =" : "");
1705 if (depth == 0 && pap->pa_prefix != NULL)
1706 name = pap->pa_prefix;
1708 pap->pa_depth = depth;
1714 rc = printfuncs[kind - 1](type, name, id, base, off, pap);
1719 mdb_iob_puts(mdb.m_out, pap->pa_delim);
1730 printarg_t *pap = data;
1734 uintptr_t addr = pap->pa_addr + off / NBBY;
1755 if ((pap->pa_flags & PA_SHOWADDR)) {
1763 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as,
1772 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, &enum_value,
1792 return (print_bitfield(off, pap, &e));
1795 if (mdb_tgt_aread(pap->pa_tgt, pap->pa_as, &u.i8, size,
1798 (ulong_t)size, pap->pa_addr);
1869 deref(printarg_t *pap, size_t size)
1872 mdb_tgt_as_t as = pap->pa_as;
1873 mdb_tgt_addr_t *ap = &pap->pa_addr;
1895 if (pap->pa_tgt == pap->pa_immtgt)
1896 pap->pa_tgt = pap->pa_realtgt;
1902 parse_member(printarg_t *pap, const char *str, mdb_ctf_id_t id,
1953 if (deref(pap, size) != 0)
1987 if (deref(pap, size) != 0)
2000 pap->pa_addr += index * size;
2026 pap->pa_addr += index * size;
2065 pap->pa_addr += off / NBBY;