History log of /src/tests/lib/libc/misc/Makefile
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.13 21-Nov-2025 nia

not all of these tests are ubsan-related any more


# 1.12 21-Nov-2025 nia

hack around:

(a) clang not enabling ultrasparc mode on netbsd (seems like a bug)
(b) the version of clang in-tree not having -mvis


# 1.11 21-Nov-2025 nia

only use -mvis for gcc, the clang in-tree does not know it yet

(plus it's optional)


# 1.10 13-Nov-2025 nia

Add an implementation of the VIS C API for sparc64.

VIS is an extension of the SPARCv9 instruction set that adds packed
integer vector instructions that operate on 64-bit floating point
registers. It is primarily intended for accelerating common 2D
graphics and multimedia operations.

While GCC includes limited support for VIS via builtins, the builtins
are incomplete and incompatible with the C API described in
"VIS(tm) Instruction Set User's Manual" published by Sun Microsystems
in May 2001. This implementation intends to be 100% compatible with
the one described in the manual.

All sparc64 processors except the HAL SPARC64 (apparently not supported
by NetBSD) support the VIS instruction set. The paper documents
functions up to VIS 2. Post-Oracle CPUs support VIS 3 and VIS 4, but
I don't have access to C API documentation for those (presumably
the code is proprietary to SunPro on Solaris 11), and we can worry
about that when sun4v support is more mature.

The implementation includes some basic tests for packed arithmetic.


Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base perseant-exfatfs-base-20240630 perseant-exfatfs-base
# 1.9 10-Aug-2023 mrg

make this build with GCC 12.

there are some odd constructs here to trigger sanitizers.


Revision tags: netbsd-10-1-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base
# 1.8 29-May-2022 andvar

fix various typos in comments and log messages.


Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
# 1.7 07-Sep-2020 mrg

avoid new GCC 9 warnings.


Revision tags: phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406
# 1.6 30-Jan-2020 christos

hack for clang/powerpc


Revision tags: phil-wifi-20191119
# 1.5 29-Sep-2019 mrg

convert HAVE_GCC == 7 to HAVE_GCC >= 7.


# 1.4 15-Aug-2019 kamil

Fix build of t_ubsan/t_ubsanxx under MKSANITIZER

Do not link micro-ubsan runtime for disabled tests.

This avoids double symbols linked into a single binary.


Revision tags: netbsd-9-base phil-wifi-20190609
# 1.3 04-Feb-2019 mrg

branches: 1.3.2; 1.3.4;
- revert previous to t_ubsan.c, it is desired behaviour. from kamil.
- use -Wno-int-in-bool-context instead


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.2 09-Aug-2018 christos

branches: 1.2.2;
Fix stack protector build.


# 1.1 03-Aug-2018 kamil

Import micro-UBSan ATF tests

These tests are used only when a distribution is built without MKSANITIZER
and without MKLIBCSANITIZER. They build the ubsan.c micro-implementation
in userland as a standalone library (a .c file linked into tests).

The code generation part emits symbols that are handled by uUBSan.

Tested with Clang amd64 + i386 and GCC amd64 + i386.

There are two sets of tests: C code generation and C++ code generation.

There are various little differences that are handled with proper ifdefs.

Clang 7svn has significantly more checks for Undefined Behavior than GCC
5.x. Some of the tests are or might be amd64 and/or i386 specific and are
marked with proper ifdefs and comments according to the compiler
documentation.