summaryrefslogtreecommitdiffstats
path: root/cddl/contrib/opensolaris/tools/ctf/cvt/ctf.c
Commit message (Collapse)AuthorAgeFilesLines
* MFC r280125:markj2015-03-181-1/+1
| | | | | | Add a missing format string argument. PR: 197391
* Style issue in r253661.pfg2013-07-261-1/+1
| | | | | Pointed out by: avg MFC after: 1 month
* Fix a segfault in ctfmerge due to a bug in gcc.pfg2013-07-261-1/+12
| | | | | | | | | | | | | 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
* Fix -Wmissing-variable-declarations compiler warnings.ed2013-04-191-1/+1
| | | | | References: https://www.illumos.org/issues/3700
* Maintain target's byte order for multi-byte fields in CTF structures.gonzo2012-03-241-0/+99
| | | | | | | | | | | | | | | | | | | | CTF format is not cross-platform by design, e.g. it is not guaranteed that data generated by ctfconvert/ctfmerge on one architecture will be successfuly read on another. CTF structures are saved/restored using naive approach. Roughly it looks like: write(fd, &ctf_struct, sizeof(ctf_struct)) read(fd, &ctf_struct, sizeof(ctf_struct)) By sheer luck memory layout of all type-related CTF structures is the same on amd64/i386/mips32/mips64. It's different on ARM though. sparc, ia64, powerpc, and powerpc64 were not tested. So in order to get file compatible with dtrace on ARM it should be compiled on ARM. Alternative solution would be to have "signatures" for every platform and ctfmerge should convert host's reperesentation of CTF structure to target's one using "signature" as template. This patch checks byte order of ELF files used for generating CTF record and makes sure that byte order of data written to resulting files is the same as target's byte order.
* MFV OpenSolaris DTrace userland bits.rpaulo2010-08-021-6/+21
|
* Do not encode more than CTF_MAX_VLEN(1023) enum members.kan2010-05-031-1/+8
| | | | | | | | | | | CTF can not represent enums with more than CTF_MAX_VLEN members, but ctfconvert will happily ignore that limitation and create CTF section no other tool can interpret. This change is different from similar change from upstream, which just returns an error if big enum is encountered. Doing that means that every FreeBSD kernel with compiled in hwpmc will have no useable CTF information due to pmc_event enum having 1236+ members.
* A lot of changes to make this code compile cleanly on FreeBSD.jb2008-04-261-54/+55
|
* Vendor import of the full userland contrib part of DTrace support fromjb2008-04-261-55/+54
| | | | | | | | | | | 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).
* Vendor import of the CTF (Compact C Type Format) code used by DTracejb2008-04-251-0/+1263
from OpenSolaris.
OpenPOWER on IntegriCloud