version 1.6, 2017/09/19 08:28:57 |
version 1.7, 2017/09/23 12:24:31 |
|
|
uint32_t, uint32_t); |
uint32_t, uint32_t); |
const char *ctf_kind2name(uint16_t); |
const char *ctf_kind2name(uint16_t); |
const char *ctf_enc2name(uint16_t); |
const char *ctf_enc2name(uint16_t); |
|
const char *ctf_fpenc2name(uint16_t); |
const char *ctf_off2name(struct ctf_header *, const char *, off_t, |
const char *ctf_off2name(struct ctf_header *, const char *, off_t, |
uint32_t); |
uint32_t); |
|
|
|
|
case CTF_K_FLOAT: |
case CTF_K_FLOAT: |
eob = *((uint32_t *)(p + toff)); |
eob = *((uint32_t *)(p + toff)); |
toff += sizeof(uint32_t); |
toff += sizeof(uint32_t); |
printf(" encoding=0x%x offset=%u bits=%u", |
printf(" encoding=%s offset=%u bits=%u", |
CTF_FP_ENCODING(eob), CTF_FP_OFFSET(eob), CTF_FP_BITS(eob)); |
ctf_fpenc2name(CTF_FP_ENCODING(eob)), CTF_FP_OFFSET(eob), |
|
CTF_FP_BITS(eob)); |
break; |
break; |
case CTF_K_ARRAY: |
case CTF_K_ARRAY: |
cta = (struct ctf_array *)(p + toff); |
cta = (struct ctf_array *)(p + toff); |
|
|
return "VARARGS"; |
return "VARARGS"; |
|
|
if (enc > 0 && enc < nitems(enc_name)) |
if (enc > 0 && enc < nitems(enc_name)) |
|
return enc_name[enc - 1]; |
|
|
|
snprintf(invalid, sizeof(invalid), "0x%x", enc); |
|
return invalid; |
|
} |
|
|
|
const char * |
|
ctf_fpenc2name(uint16_t enc) |
|
{ |
|
static const char *enc_name[] = { "SINGLE", "DOUBLE", NULL, NULL, |
|
NULL, "LDOUBLE" }; |
|
static char invalid[7]; |
|
|
|
if (enc > 0 && enc <= nitems(enc_name) && enc_name[enc - 1] != NULL) |
return enc_name[enc - 1]; |
return enc_name[enc - 1]; |
|
|
snprintf(invalid, sizeof(invalid), "0x%x", enc); |
snprintf(invalid, sizeof(invalid), "0x%x", enc); |