summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/sys/ctf.h
diff options
context:
space:
mode:
authorJohn Levon <john.levon@joyent.com>2018-09-28 17:18:54 +0000
committerJohn Levon <john.levon@joyent.com>2018-10-12 13:39:07 +0000
commit442caaa4b1a9f5a199a4b98f5c94c928e42890db (patch)
treefa5ff4de1ca4b6ffa965e697dccd19e615429e09 /usr/src/uts/common/sys/ctf.h
parent34eab8ac1fa711a576ce314166c9490408ad36be (diff)
downloadillumos-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.h14
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 */