Lines Matching refs:cd
822 ctf_decl_init(ctf_decl_t *cd, char *buf, size_t len) in ctf_decl_init() argument
826 bzero(cd, sizeof (ctf_decl_t)); in ctf_decl_init()
829 cd->cd_order[i] = CTF_PREC_BASE - 1; in ctf_decl_init()
831 cd->cd_qualp = CTF_PREC_BASE; in ctf_decl_init()
832 cd->cd_ordp = CTF_PREC_BASE; in ctf_decl_init()
834 cd->cd_buf = buf; in ctf_decl_init()
835 cd->cd_ptr = buf; in ctf_decl_init()
836 cd->cd_end = buf + len; in ctf_decl_init()
840 ctf_decl_fini(ctf_decl_t *cd) in ctf_decl_fini() argument
846 for (cdp = ctf_list_next(&cd->cd_nodes[i]); in ctf_decl_fini()
947 ctf_decl_push(ctf_decl_t *cd, linker_ctf_t *lc, ctf_id_t type) in ctf_decl_push() argument
959 cd->cd_err = ENOENT; in ctf_decl_push()
969 ctf_decl_push(cd, lc, ar.ctr_contents); in ctf_decl_push()
976 ctf_decl_push(cd, lc, t); in ctf_decl_push()
983 ctf_decl_push(cd, lc, t); in ctf_decl_push()
988 ctf_decl_push(cd, lc, t); in ctf_decl_push()
995 ctf_decl_push(cd, lc, t); in ctf_decl_push()
996 prec = cd->cd_qualp; in ctf_decl_push()
1009 if (ctf_list_next(&cd->cd_nodes[prec]) == NULL) in ctf_decl_push()
1010 cd->cd_order[prec] = cd->cd_ordp++; in ctf_decl_push()
1016 if (prec > cd->cd_qualp && prec < CTF_PREC_ARRAY) in ctf_decl_push()
1017 cd->cd_qualp = prec; in ctf_decl_push()
1025 ctf_list_prepend(&cd->cd_nodes[prec], cdp); in ctf_decl_push()
1027 ctf_list_append(&cd->cd_nodes[prec], cdp); in ctf_decl_push()
1031 ctf_decl_sprintf(ctf_decl_t *cd, const char *format, ...) in ctf_decl_sprintf() argument
1033 size_t len = (size_t)(cd->cd_end - cd->cd_ptr); in ctf_decl_sprintf()
1038 n = vsnprintf(cd->cd_ptr, len, format, ap); in ctf_decl_sprintf()
1041 cd->cd_ptr += MIN(n, len); in ctf_decl_sprintf()
1042 cd->cd_len += n; in ctf_decl_sprintf()
1048 ctf_decl_t cd; in fbt_type_name() local
1057 ctf_decl_init(&cd, buf, len); in fbt_type_name()
1058 ctf_decl_push(&cd, lc, type); in fbt_type_name()
1060 if (cd.cd_err != 0) { in fbt_type_name()
1061 ctf_decl_fini(&cd); in fbt_type_name()
1072 ptr = cd.cd_order[CTF_PREC_POINTER] > CTF_PREC_POINTER; in fbt_type_name()
1073 arr = cd.cd_order[CTF_PREC_ARRAY] > CTF_PREC_ARRAY; in fbt_type_name()
1081 for (cdp = ctf_list_next(&cd.cd_nodes[prec]); in fbt_type_name()
1088 ctf_decl_sprintf(&cd, " "); in fbt_type_name()
1091 ctf_decl_sprintf(&cd, "("); in fbt_type_name()
1099 ctf_decl_sprintf(&cd, "%s", name); in fbt_type_name()
1102 ctf_decl_sprintf(&cd, "*"); in fbt_type_name()
1105 ctf_decl_sprintf(&cd, "[%u]", cdp->cd_n); in fbt_type_name()
1108 ctf_decl_sprintf(&cd, "()"); in fbt_type_name()
1112 ctf_decl_sprintf(&cd, "struct %s", name); in fbt_type_name()
1115 ctf_decl_sprintf(&cd, "union %s", name); in fbt_type_name()
1118 ctf_decl_sprintf(&cd, "enum %s", name); in fbt_type_name()
1121 ctf_decl_sprintf(&cd, "volatile"); in fbt_type_name()
1124 ctf_decl_sprintf(&cd, "const"); in fbt_type_name()
1127 ctf_decl_sprintf(&cd, "restrict"); in fbt_type_name()
1135 ctf_decl_sprintf(&cd, ")"); in fbt_type_name()
1138 ctf_decl_fini(&cd); in fbt_type_name()
1139 return (cd.cd_len); in fbt_type_name()