platform_bionic/tests
Elliott Hughes 620a72252e riscv64: fix ifuncs, improve the ifunc tests.
Talking futher to the person doing the glibc risc-v ifunc work, they
clarified that glibc _is_ passing hwcap as the first argument, and the
null pointer is actually the second argument.

https://sourceware.org/pipermail/libc-alpha/2023-August/150967.html

So since our whole purpose here was source compatibility, let's do what
they're actually doing, and let's add some tests. I've also added a test
that __riscv_hwprobe() works from an ifunc resolver because that's one
place where it might well be used. That said, one other thing that came
out of the discussion is that I actually went away and looked at a
sample of top apps to see how many are using ifuncs currently. The
result? Zero. So although this _might_ be interesting long term
(especially if clang gets riscv64 FMV), I think we've done more than we
need to with riscv64 ifuncs for now!

Test: ran locally, both dynamic and static tests
Change-Id: Ie2044d9f4e47c32c00ad381f045c537f4df38b08
2023-08-21 16:17:35 -07:00
..
headers Explain the header tests better. 2023-05-08 19:14:28 +00:00
libs Simplify MemtagNoteTests 2023-06-23 13:21:19 -07:00
math_data
prebuilt-elf-files Add invalid riscv64 ELF files for the linker tests. 2022-11-16 00:52:26 +00:00
__aeabi_read_tp_test.cpp Make tls related header files platform accessible. 2019-09-27 12:14:24 -07:00
__cxa_atexit_test.cpp __cxa_atexit_test: declare __cxa_atexit and __cxa_finalize 2022-12-08 17:43:29 -08:00
__cxa_demangle_test.cpp Use abi::__cxa_demangle declared in cxxabi.h 2022-12-09 16:10:00 -08:00
__cxa_thread_atexit_test.cpp
_FILE_OFFSET_BITS_test.cpp _FILE_OFFSET_BITS=64 support for fcntl. 2020-01-29 19:36:14 -08:00
alloca_test.cpp A few new bionic tests. 2017-12-07 15:44:20 -08:00
Android.bp Move bionic test libraries to a default, for easy consumption in cts. 2023-08-21 13:55:10 +02:00
Android.mk Move prebuilt library dependencies of bionic-unit-tests to Blueprint 2020-07-28 19:01:00 -07:00
android_get_device_api_level.cpp Fix argument order in api level test 2020-05-04 12:11:37 +01:00
android_set_abort_message_test.cpp In android_set_abort_message, check for nullptr. 2022-04-12 13:46:48 -07:00
android_unsafe_frame_pointer_chase_test.cpp Skip android_unsafe_frame_pointer_chase.pthread with native bridge 2020-09-17 15:43:56 -07:00
arpa_inet_test.cpp Replace local MUSL define with global ANDROID_HOST_MUSL 2021-08-16 16:44:24 -07:00
assert_test.cpp Switch to libbase SilentDeathTest. 2021-04-12 10:01:20 -07:00
async_safe_test.cpp Fix mte build breakage. 2023-03-21 18:11:02 +00:00
atexit_test.cpp Remove workarounds for old versions of clang and GCC. 2018-07-11 13:18:29 -07:00
bionic_allocator_test.cpp Changes for #inclusivefixit. 2020-07-21 16:34:58 -07:00
buffer_tests.cpp Cleanup bionic tests with hwasan. 2019-02-06 13:59:16 -08:00
buffer_tests.h Modernize codebase by replacing NULL with nullptr 2018-08-02 18:09:44 -07:00
bug_26110743_test.cpp Fix uses of readlink in tests. 2018-08-23 11:30:56 -07:00
byteswap_test.cpp A few new bionic tests. 2017-12-07 15:44:20 -08:00
cfi_test.cpp CFI uses SIGTRAP on arm/arm64. 2022-02-15 14:04:44 -08:00
clang_fortify_asan.cpp fortify: allow diagnostics without run-time checks (attempt #2) 2019-11-19 14:20:26 -08:00
clang_fortify_tests.cpp Nullability check for stdlib module. 2022-12-02 21:00:02 +00:00
complex_test.cpp <complex.h>: stop using __INTRODUCED_IN_(32|64). 2023-06-12 10:22:12 -07:00
core_shared_libs.h Ignore symbols of imported libs' dependencies 2020-02-03 14:20:40 -08:00
ctype_test.cpp Reimplement the <ctype.h> is* functions. 2019-10-08 12:04:09 -07:00
dirent_test.cpp Replace local MUSL define with global ANDROID_HOST_MUSL 2021-08-16 16:44:24 -07:00
dl_test.cpp Remove explicit lists of ABIs. 2022-10-19 16:20:02 +00:00
dlext_private.h Rename linker greylist to exempt-list 2020-08-03 16:17:00 -07:00
dlext_test.cpp Merge "Convert bionic dlext test zips to Android.bp" 2021-10-01 16:27:54 +00:00
dlfcn_symlink_support.cpp EndsWith now accepts std::string suffixes. 2017-12-20 12:28:30 -08:00
dlfcn_symlink_support.h
dlfcn_test.cpp Merge "Clarify dlfcn.dladdr_libc slightly." 2023-04-20 15:06:48 +00:00
elf_test.cpp Restore ELF32_ST_INFO/ELF64_ST_INFO. 2017-04-30 22:56:10 -07:00
elftls_dl_test.cpp Fix elftls_dl#dtv_resize with HWASan 2023-05-26 14:11:40 -07:00
elftls_test.cpp Only test tprel_missing_weak in dynamic binaries 2019-02-11 18:37:17 -08:00
endian_test.cpp bionic tests: use GTEST_SKIP. 2019-03-12 10:26:39 -07:00
errno_test.cpp Remove volatile from the __errno declaration. 2017-06-13 16:02:07 -07:00
error_test.cpp Switch to libbase SilentDeathTest. 2021-04-12 10:01:20 -07:00
eventfd_test.cpp Fix freopen() where the path is null. 2021-02-04 17:01:55 -08:00
execinfo_test.cpp Don't assume size of functions. 2023-07-28 15:51:38 -07:00
fcntl_test.cpp Mark death tests properly. 2023-07-24 14:31:15 -07:00
fdsan_test.cpp Switch to libbase SilentDeathTest. 2021-04-12 10:01:20 -07:00
fdtrack_test.cpp Disable fdtrack post-fork. 2021-04-07 19:00:45 -07:00
fenv_test.cpp riscv64: fix <fenv.h> tests. 2022-10-18 23:47:28 +00:00
float_test.cpp Fix up a few bionic tests for the clang-r339409 update. 2018-09-24 16:59:08 -07:00
fnmatch_test.cpp Add tests for FNM_LEADING_DIR 2020-12-10 08:07:28 -08:00
fortify_test.cpp Set __BIONIC_COMPLICATED_NULLNESS for the vsnprintf family 2023-04-26 23:14:36 +00:00
fortify_test_main.cpp
ftw_test.cpp Build bionic unit tests for musl 2021-08-12 11:13:11 -07:00
getauxval_test.cpp bionic tests: use GTEST_SKIP. 2019-03-12 10:26:39 -07:00
getcwd_test.cpp Use SKIP_WITH_HWASAN macro from libbase. 2022-04-15 16:14:56 -07:00
glob_test.cpp Replace local MUSL define with global ANDROID_HOST_MUSL 2021-08-16 16:44:24 -07:00
grp_pwd_file_test.cpp bionic tests: use GTEST_SKIP. 2019-03-12 10:26:39 -07:00
grp_pwd_test.cpp Fix-up for change in pwd/grp ids for PRNG seeder daemon 2022-10-27 11:21:29 +01:00
gtest_globals.cpp Convert bionic dlext test zips to Android.bp 2021-09-30 14:04:27 -07:00
gtest_globals.h Move prebuilt library dependencies of bionic-unit-tests to Blueprint 2020-07-28 19:01:00 -07:00
gtest_main.cpp Move isolated test runner out of bionic. 2018-09-27 22:22:17 -07:00
gtest_preinit_debuggerd.cpp
gtest_utils.h Move isolated test runner out of bionic. 2018-09-27 22:22:17 -07:00
gwp_asan_test.cpp No tombstones under normal bionic unit tests run. 2023-07-24 17:51:41 -07:00
heap_tagging_level_test.cpp Mark death tests properly. 2023-07-24 14:31:15 -07:00
hwasan_test.cpp Fix the hwasan_test copyright header. 2023-04-24 17:10:20 -07:00
iconv_test.cpp iconv(3): ignore src_bytes_left if src_bytes is null. 2021-02-18 10:37:22 -08:00
ifaddrs_test.cpp
ifunc_test.cpp riscv64: fix ifuncs, improve the ifunc tests. 2023-08-21 16:17:35 -07:00
inttypes_test.cpp Modernize codebase by replacing NULL with nullptr 2018-08-02 18:09:44 -07:00
iso646_test.c Add tests for all C11 headers. 2017-08-29 15:32:18 -07:00
langinfo_test.cpp
leak_test.cpp Random HWASan cleanups. 2021-09-24 11:21:38 -07:00
libdl_test.cpp Make android_get_application_target_sdk_version available to the NDK. 2018-11-15 11:07:30 -08:00
libgen_basename_test.cpp Replace local MUSL define with global ANDROID_HOST_MUSL 2021-08-16 16:44:24 -07:00
libgen_test.cpp bionic tests: use GTEST_SKIP. 2019-03-12 10:26:39 -07:00
limits_test.cpp Fix WORD_BIT test. 2017-10-23 12:06:30 -07:00
link_test.cpp Changes for #inclusivefixit. 2020-07-21 16:34:58 -07:00
linux_swab_test.cpp Add POSIX swab. 2017-10-18 13:34:32 -07:00
locale_test.cpp Nullability check for locale module 2023-03-16 21:42:57 +00:00
make_fortify_compile_test.mk Add LOCAL_LICENSE_KINDS to bionic 2021-02-19 23:38:28 +00:00
malloc_iterate_test.cpp Use SKIP_WITH_HWASAN macro from libbase. 2022-04-15 16:14:56 -07:00
malloc_stress_test.cpp [GWP-ASan] [malloc-tests] Scan GWP-ASan regions in maps. 2020-02-11 16:08:17 -08:00
malloc_test.cpp Increase time to set allocation limit. 2023-08-04 13:10:48 -07:00
math_data_test.h
math_test.cpp Remove __RENAME_LDBL. 2023-06-07 17:20:53 +00:00
membarrier_test.cpp bionic tests: use GTEST_SKIP. 2019-03-12 10:26:39 -07:00
memtag_stack_test.cpp [MTE] test for exception cleanup. 2022-11-07 18:17:44 -08:00
mntent_test.cpp mntent_test: don't assume /proc isn't the first mount. 2022-05-16 17:56:24 +00:00
mte_test.cpp [MTE] Add comment about nested ScopedDisableMTE in test. 2022-08-02 23:52:43 +00:00
net_if_test.cpp
netdb_test.cpp Replace local MUSL define with global ANDROID_HOST_MUSL 2021-08-16 16:44:24 -07:00
netinet_ether_test.cpp Various coverage improvements. 2020-08-12 15:52:14 -07:00
netinet_in_test.cpp Replace local MUSL define with global ANDROID_HOST_MUSL 2021-08-16 16:44:24 -07:00
netinet_ip_icmp_test.cpp <netinet/ip_icmp.h>: ensure struct icmphdr is available. 2018-06-27 12:29:06 -07:00
netinet_udp_test.cpp
nl_types_test.cpp
NOTICE Add POSIX <utmpx.h>. 2023-04-03 17:20:58 -07:00
pidfd_test.cpp Switch to libbase SilentDeathTest. 2021-04-12 10:01:20 -07:00
poll_test.cpp Add a test for poll with null fds. 2018-08-30 12:15:56 -07:00
prio_ctor_test.cpp Put __*_ARRAY__ symbols before prioritized init/fini funcs 2020-11-02 17:28:41 -08:00
pthread_dlfcn_test.cpp
pthread_test.cpp Fix pthread#pthread_heap_allocated_stack for jemalloc. 2023-04-21 11:18:40 -07:00
pty_test.cpp Cleanup for #inclusivefixit. 2020-07-28 12:12:20 -07:00
regex_test.cpp Modernize codebase by replacing NULL with nullptr 2018-08-02 18:09:44 -07:00
resolv_test.cpp Export bionic's resolv base64 functions to musl 2022-02-03 16:25:26 -08:00
run-on-host.sh Add musl handling in run-on-host.sh. 2023-07-19 21:53:11 +00:00
sched_test.cpp Nullability check for sched module. 2023-03-29 21:46:57 +00:00
scs_test.cpp Mark death tests properly. 2023-07-24 14:31:15 -07:00
scsi_sg_test.cpp Enable exporting the non-uapi scsi headers. 2017-05-25 19:17:55 -07:00
search_test.cpp Various coverage improvements. 2020-08-12 15:52:14 -07:00
semaphore_test.cpp Nullability check for semaphore module 2023-04-12 18:07:11 +00:00
setjmp_test.cpp Fix setjmp.bug_152210274 with HWASan/stack MTE enabled. 2023-03-22 13:49:53 -07:00
signal_test.cpp De-pessimize SigSetConverter usage. 2023-07-19 12:20:07 -07:00
SignalUtils.h Build bionic unit tests for musl 2021-08-12 11:13:11 -07:00
spawn_test.cpp <spawn.h>: add posix_spawn_file_actions_addchdir_np()/posix_spawn_file_actions_addfchdir_np(). 2023-04-04 17:28:39 -07:00
sstream_test.cpp
stack_protector_test.cpp Switch to libbase SilentDeathTest. 2021-04-12 10:01:20 -07:00
stack_protector_test_helper.cpp Set optnone attribute for modify_stack_protector_test 2023-03-15 01:03:59 +09:00
stack_unwinding_test.cpp Disable return PAC in __pthread_start. 2021-06-08 18:41:36 -07:00
stdalign_test.cpp Add tests for all C11 headers. 2017-08-29 15:32:18 -07:00
stdarg_test.cpp Add tests for all C11 headers. 2017-08-29 15:32:18 -07:00
stdatomic_test.cpp Changes for #inclusivefixit. 2020-07-21 16:34:58 -07:00
stdbool_test.c Add tests for all C11 headers. 2017-08-29 15:32:18 -07:00
stdint_test.cpp
stdio_ext_test.cpp Add __freadahead. 2022-09-22 23:47:42 +00:00
stdio_nofortify_test.cpp
stdio_test.cpp No tombstones under normal bionic unit tests run. 2023-07-24 17:51:41 -07:00
stdlib_test.cpp Nullability check for stdlib module. 2022-12-02 21:00:02 +00:00
stdnoreturn_test.cpp Add tests for all C11 headers. 2017-08-29 15:32:18 -07:00
string_nofortify_test.cpp
string_posix_strerror_r_test.cpp Replace local MUSL define with global ANDROID_HOST_MUSL 2021-08-16 16:44:24 -07:00
string_posix_strerror_r_wrapper.cpp Enable posix strerror_r test in glibc 2021-07-30 09:39:58 -07:00
string_test.cpp Fix bionic tests for undefined __SIGRTMIN in musl 2022-10-20 13:16:21 -07:00
strings_nofortify_test.cpp
strings_test.cpp Add ffsl(3), ffsll(3). 2020-03-26 11:43:05 -07:00
struct_layout_test.cpp Make fork equivalent to vfork when HWASan or MTE stack tagging is enabled. 2023-05-08 15:26:00 -07:00
sys_auxv_test.cpp Make the HWCAP/HWCAP2 constants available from <sys/auxv.h>. 2020-02-24 09:52:14 -08:00
sys_cachectl_test.cpp Add __riscv_flush_icache() to <sys/cachectl.h>. 2023-07-12 16:30:55 -07:00
sys_epoll_test.cpp Fix freopen() where the path is null. 2021-02-04 17:01:55 -08:00
sys_hwprobe_test.cpp sys_hwprobe_test.cpp: compare vdso to syscall. 2023-08-14 14:58:33 -07:00
sys_ioctl_diag_test.cpp libc: silence unsigned->signed warnings with ioctl 2018-03-20 15:59:46 -07:00
sys_mman_test.cpp Nullability check for mman module. 2023-05-18 19:02:25 +00:00
sys_msg_test.cpp Nullability check for msg module. 2023-04-15 01:13:26 +00:00
sys_param_test.cpp Make powerof2 macro ubsan safe 2019-03-25 13:51:33 -07:00
sys_personality_test.cpp Remove mips test workarounds. 2020-02-13 09:48:14 -08:00
sys_prctl_test.cpp bionic tests: use GTEST_SKIP. 2019-03-12 10:26:39 -07:00
sys_procfs_test.cpp Build bionic unit tests for musl 2021-08-12 11:13:11 -07:00
sys_ptrace_test.cpp Update sys_ptrace_test.cpp for riscv64. 2022-11-12 00:08:17 +00:00
sys_quota_test.cpp
sys_random_test.cpp Nullability check for random module. 2023-04-14 01:01:37 +00:00
sys_resource_test.cpp Add rlim64_t to libc/include/sys/resource 2022-12-08 23:32:11 +00:00
sys_select_test.cpp Modernize codebase by replacing NULL with nullptr 2018-08-02 18:09:44 -07:00
sys_sem_test.cpp Nullability check for sem module. 2023-04-21 21:34:11 +00:00
sys_sendfile_test.cpp Build bionic unit tests for musl 2021-08-12 11:13:11 -07:00
sys_shm_test.cpp Nullability check for shm module. 2023-05-23 19:15:25 +00:00
sys_signalfd_test.cpp Rewrite system(3) to use posix_spawn(3). 2018-03-05 17:20:12 -08:00
sys_socket_test.cpp Nullability check for socket module. 2023-06-15 23:51:02 +00:00
sys_stat_test.cpp Improve fchmod() coverage. 2021-03-08 14:10:46 -08:00
sys_statvfs_test.cpp Build bionic unit tests for musl 2021-08-12 11:13:11 -07:00
sys_syscall_test.cpp
sys_sysinfo_test.cpp Cast sysinfo.uptime for musl 2022-09-29 11:15:06 -07:00
sys_sysmacros_test.cpp
sys_thread_properties_test.cpp Add a thread-properties API 2020-08-11 16:51:43 +00:00
sys_time_test.cpp Fix bionic-unit-tests-glibc for 32-bit musl 2021-08-16 16:32:53 -07:00
sys_timex_test.cpp Nullability check for time module. 2023-05-16 00:17:36 +00:00
sys_ttydefaults_test.cpp Mark variables as unused. 2021-12-14 23:02:53 +00:00
sys_types_test.cpp Build bionic unit tests for musl 2021-08-12 11:13:11 -07:00
sys_uio_test.cpp Add preadv2/pwritev2 wrappers. 2021-10-18 12:58:47 -07:00
sys_un_test.cpp <sys/un.h>: add SUN_LEN. 2018-06-27 14:08:48 -07:00
sys_vfs_test.cpp Build bionic unit tests for musl 2021-08-12 11:13:11 -07:00
sys_wait_test.cpp Fix the WIFSTOPPED definition. 2023-05-01 19:48:12 +00:00
sys_xattr_test.cpp Improve <sys/xattr.h> coverage. 2021-03-08 14:09:43 -08:00
syslog_test.cpp syslog.h: implement LOG_PERROR. 2023-05-03 14:19:40 -07:00
system_properties_test.cpp Switch to libbase SilentDeathTest. 2021-04-12 10:01:20 -07:00
system_properties_test2.cpp Check that __system_property_set() doesn't leak FDs 2019-11-05 12:33:33 -08:00
termios_test.cpp Add trivial termios tests. 2017-12-14 09:46:50 -08:00
tgmath_test.c Add tests for all C11 headers. 2017-08-29 15:32:18 -07:00
thread_local_test.cpp Remove workarounds for old versions of clang and GCC. 2018-07-11 13:18:29 -07:00
threads_test.cpp Switch to libbase SilentDeathTest. 2021-04-12 10:01:20 -07:00
time_test.cpp Document how to use tzalloc()/tzfree() with std::unique_ptr. 2023-06-22 20:54:12 +00:00
touch-obj-on-success Stop using grep -P. 2019-07-08 15:03:19 -07:00
uchar_test.cpp Fix result for zero-length non-null conversion. 2023-08-04 19:48:56 +00:00
unistd_nofortify_test.cpp
unistd_test.cpp Disable stack tagging in CloneStartRoutine. 2023-03-21 22:57:50 -07:00
utils.cpp Define gettid symbol when testing on glibc < 2.30 2023-08-03 07:19:17 -07:00
utils.h Verify that allocated memory is always zeroed. 2023-01-26 15:19:09 -08:00
utmp_test.cpp Add POSIX <utmpx.h>. 2023-04-03 17:20:58 -07:00
utmpx_test.cpp Add POSIX <utmpx.h>. 2023-04-03 17:20:58 -07:00
wchar_test.cpp Fix result for zero-length non-null conversion. 2023-08-04 19:48:56 +00:00
wctype_test.cpp bionic tests: use GTEST_SKIP. 2019-03-12 10:26:39 -07:00