Name Date Size #Lines LOC

..21-Dec-2023-

test-merge-dedup/H14-Feb-2021-

test-merge-forward/H14-Feb-2021-

test-merge-reduction/H14-Feb-2021-

test-merge-static/H14-Feb-2021-

test-merge-weak/H14-Feb-2021-

MakefileH A D14-Feb-20213.4 KiB158114

Makefile.ctftest.comH A D14-Feb-20212.5 KiB9336

READMEH A D14-Feb-20211.8 KiB5542

check-array.cH A D14-Feb-20213 KiB12592

check-common.cH A D01-Jan-202419.3 KiB872691

check-common.hH A D14-Feb-20214 KiB16986

check-enum.cH A D14-Feb-20213.1 KiB160121

check-float.cH A D14-Feb-20211.8 KiB8152

check-forward.cH A D14-Feb-20212.6 KiB12386

check-function.cH A D10-Dec-20212.9 KiB10369

check-int.cH A D14-Feb-20212 KiB8960

check-merge-dedup.cH A D14-Feb-20211.6 KiB8353

check-merge-forward.cH A D14-Feb-20212.9 KiB13390

check-merge-reduction.cH A D14-Feb-20211.5 KiB7340

check-merge-static.cH A D14-Feb-20216.7 KiB291221

check-merge-weak.cH A D14-Feb-20211.4 KiB7140

check-qualifiers.cH A D14-Feb-202110.2 KiB362292

check-reference.cH A D14-Feb-20215.5 KiB235182

check-sou.cH A D14-Feb-202112.4 KiB452372

check-weak.cH A D14-Feb-20211.4 KiB7140

ctftest-convert-no-dwarf.kshH A D10-Dec-20213.2 KiB146100

ctftest-convert-non-c.kshH A D14-Feb-20211.8 KiB9868

ctftest-merge-no-ctf.kshH A D14-Feb-20212.7 KiB12687

ctftest.kshH A D14-Feb-20216.6 KiB317239

precheck.kshH A D12-Jul-2022738 4019

test-array.cH A D14-Feb-2021727 3210

test-enum.cH A D14-Feb-20211.8 KiB10564

test-float.cH A D14-Feb-2021715 297

test-forward.cH A D14-Feb-2021732 3513

test-function.cH A D10-Dec-20211.5 KiB10971

test-int.cH A D14-Feb-2021702 3510

test-qualifiers.cH A D14-Feb-20211,020 4318

test-reference.cH A D14-Feb-2021961 4516

test-sou.cH A D14-Feb-20213.9 KiB256158

test-weak.cH A D14-Feb-2021572 268

README

1#
2# This file and its contents are supplied under the terms of the
3# Common Development and Distribution License ("CDDL"), version 1.0.
4# You may only use this file in accordance with the terms of version
5# 1.0 of the CDDL.
6#
7# A full copy of the text of the CDDL should have accompanied this
8# source.  A copy of the CDDL is also available via the Internet at
9# http://www.illumos.org/license/CDDL.
10#
11
12#
13# Copyright (c) 2019, Joyent, Inc.
14#
15
16CTF Tests
17---------
18
19This directory contains a series of tests for the Compact C Type Format
20(CTF). For each test program, there is a corresponding C program that
21goes through and checks the CTF for various aspects. Due to the fact
22that the CTF generated by compilers can change slightly, the tests have
23been designed this way to try and make it work with as wide a variety of
24programs as possible.
25
26The test suite requires the following:
27
281. make
292. C Compiler (defaults to gcc)
303. A copy of ctfconvert
31
32The source for a given program will be compiled on the target system and
33then converted. This allows us to try the CTF tools against a wide
34variety of different compilers or DWARF standards.
35
36Caveats
37-------
38
39Right now the tests only pass when using gcc 4.x. The following are
40known issues with the tests:
41
421. gcc7+ generates some different DWARF ordering, which causes some
43tests to spuriously fail. These tests should be improved.
44
452. There are cases where gcc7+ appears to attribute things as being const
46twice in DWARF which throw off the tests. The CTF tools likely should
47work around this if we confirm that this is intentional.
48
493. Many tests will cause clang not to emit DWARF information because
50clang infers that they cannot be used. The tests should be cleaned up in
51these cases.
52
534. clang generated DWARF can confuse the CTF tools. The tools should be
54fixed and additional regression tests should be added.
55