| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Fix handling of forward enum declarations in the CTF tools.
|
|
|
|
|
|
|
|
| |
attribute rather than DW_AT_upper_bound. Teach ctfconvert about this so that
array type sizes are encoded correctly.
PR: 203772
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since the upstream for cddl code is now illumos not sun, mechanically
convert all sun #ifdef's to illumos #ifdef's which have been used in all
newer code for some time.
Also do a manual pass to correct the use if #ifdef comments as per style(9)
as well as few uses of #if defined(__FreeBSD__) vs #ifndef illumos.
MFC after: 1 month
Sponsored by: Multiplay
|
|
|
|
|
|
|
|
|
| |
These would cause ctfconvert(1) to return an error when attempting to
resolve valid C types.
Reviewed by: Robert Mustacchi <rm@joyent.com>
MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
|
| |
|
|
|
|
| |
Submitted by: emaste
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
emitting the DIE for the type of that member. ctfconvert can not
handle this properly and will calculate a wrong member bit offset.
Same struct/union type from different .o file will be treated as
different types when their member bit offsets are different, and
gets added/merged multiple times. This will in turn cause many other
structs/pointers/typedefs that refer to the duplicated struct/union
gets added/merged multiple times and eventually causes numerous
duplicated CTF types in the kernel.debug file.
The simple workaround here is to make use of DW_AT_byte_size attribute
of the member DIE to calculate the bits occupied by the member's type,
without actually resolving the type.
|
|
|
|
|
|
|
| |
attributes generated by Clang 3.4.
* Document how different compilers generate DW_AT_data_member_location
attributes differently.
* Document the quirks about DW_FORM_data[48].
|
|
|
|
|
|
|
| |
bring back a known issue with DTrace regarding type name
comparison. Instead, we can set the name to an empty string.
Pointed out by: avg
|
|
|
|
|
|
|
|
| |
"__anon__". This hack is used to workaround a issue that compilers
like GCC could generate DW_TAG_base_type DIE without a name.
Note that we didn't need this before because the old libdwarf
internally set all the unnamed DIE's name to "__anon__".
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2942 CTF tools need to handle files which legitimately lack data
2978 ctfconvert still needs to ignore legitimately dataless files on SPARC
Illumos Revisions: 13745:6b3106b4250f
13754:7231b684c18b
Reference:
https://www.illumos.org/issues/2942
https://www.illumos.org/issues/2978
MFC after: 3 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GCC can generate bogus dwarf attributes with DW_AT_byte_size
set to 0xFFFFFFFF.
The issue was originaly detected in NetBSD but it has been
adapted for portability and to avoid compiler warnings.
Reference:
https://www.illumos.org/issues/3776
Obtained from: NetBSD
MFC after: 1 month
|
|
|
|
| |
is used in Solaris.
|
|
|
|
|
|
|
|
|
|
|
| |
OpenSolaris. This commit resets files to match the versions in the
OpenSolaris tree as of 2008/04/10.
The changes in this import from the previous import are the ones that
will subsequently re-applied to take files off the vendor branch. This
is unfortunately necessary because the Solaris developers won't allow
FreeBSD support #ifdefs in their source code because that creates
'dead code' (stuff that they never compile).
|
|
from OpenSolaris.
|