diff options
author | John Levon <john.levon@joyent.com> | 2018-09-28 17:18:54 +0000 |
---|---|---|
committer | John Levon <john.levon@joyent.com> | 2018-10-12 13:39:07 +0000 |
commit | 442caaa4b1a9f5a199a4b98f5c94c928e42890db (patch) | |
tree | fa5ff4de1ca4b6ffa965e697dccd19e615429e09 /usr/src/uts/common/sys/ctf.h | |
parent | 34eab8ac1fa711a576ce314166c9490408ad36be (diff) | |
download | illumos-joyent-442caaa4b1a9f5a199a4b98f5c94c928e42890db.tar.gz |
OS-7270 ctfconvert doesn't handle DW_AT_specification
OS-7275 ctfdump could generate C-style output
OS-7279 DWARF->CTF enum conversion needs to be careful of sign
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Approved by: Jerry Jelinek <jerry.jelinek@joyent.com>
Diffstat (limited to 'usr/src/uts/common/sys/ctf.h')
-rw-r--r-- | usr/src/uts/common/sys/ctf.h | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/usr/src/uts/common/sys/ctf.h b/usr/src/uts/common/sys/ctf.h index 065e985b82..2e41cf9a0e 100644 --- a/usr/src/uts/common/sys/ctf.h +++ b/usr/src/uts/common/sys/ctf.h @@ -22,13 +22,13 @@ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * + * Copyright 2018 Joyent, Inc. */ #ifndef _CTF_H #define _CTF_H -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #ifdef __cplusplus @@ -220,11 +220,13 @@ typedef struct ctf_type { #define CTF_TYPE_NAME(stid, offset) \ (((stid) << 31) | ((offset) & 0x7fffffff)) -#define CTF_TYPE_ISPARENT(id) ((id) < 0x8000) -#define CTF_TYPE_ISCHILD(id) ((id) > 0x7fff) +#define CTF_CHILD_START (0x8000) +#define CTF_TYPE_ISPARENT(id) ((id) < CTF_CHILD_START) +#define CTF_TYPE_ISCHILD(id) ((id) >= CTF_CHILD_START) -#define CTF_TYPE_TO_INDEX(id) ((id) & 0x7fff) -#define CTF_INDEX_TO_TYPE(id, child) ((child) ? ((id) | 0x8000) : (id)) +#define CTF_TYPE_TO_INDEX(id) ((id) & (CTF_CHILD_START - 1)) +#define CTF_INDEX_TO_TYPE(id, child) \ + ((child) ? ((id) | CTF_CHILD_START) : (id)) #define CTF_PARENT_SHIFT 15 #define CTF_STRTAB_0 0 /* symbolic define for string table id 0 */ |