Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 946269 - llvm-runtimes/compiler-rt-18.1.8-r2 fails test atomic_test.c
Summary: llvm-runtimes/compiler-rt-18.1.8-r2 fails test atomic_test.c
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: LLVM support project
URL:
Whiteboard:
Keywords: TESTFAILURE
Depends on:
Blocks:
 
Reported: 2024-12-11 14:02 UTC by Paolo Pedroni
Modified: 2024-12-28 14:20 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
compiler-rt-18.1.8-r2:20241211-132434.log.gz (compiler-rt-18.1.8-r2:20241211-132434.log.gz,26.23 KB, application/gzip)
2024-12-11 14:02 UTC, Paolo Pedroni
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Paolo Pedroni 2024-12-11 14:02:26 UTC
Created attachment 913809 [details]
compiler-rt-18.1.8-r2:20241211-132434.log.gz

FAIL: Builtins-x86_64-linux :: atomic_test.c (297 of 435)
******************** TEST 'Builtins-x86_64-linux :: atomic_test.c' FAILED ********************
Exit Code: 139

Command Output (stderr):
--
RUN: at line 1: /usr/lib/llvm/18/bin/clang   -gline-tables-only  -m64  -fno-builtin -I /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt/lib/builtins -nodefaultlibs /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt/test/builtins/Unit/atomic_test.c /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/lib/linux/libclang_rt.builtins-x86_64.a -lc -lm -o /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/Unit/X86_64LinuxConfig/Output/atomic_test.c.tmp &&  /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/Unit/X86_64LinuxConfig/Output/atomic_test.c.tmp
+ /usr/lib/llvm/18/bin/clang -gline-tables-only -m64 -fno-builtin -I /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt/lib/builtins -nodefaultlibs /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt/test/builtins/Unit/atomic_test.c /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/lib/linux/libclang_rt.builtins-x86_64.a -lc -lm -o /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/Unit/X86_64LinuxConfig/Output/atomic_test.c.tmp
/var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt/test/builtins/Unit/atomic_test.c:196:26: warning: passing 'const char[32]' to parameter of type 'void *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
  196 |       __atomic_load_c(n, data, dst, model);
      |                          ^~~~
/var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt/test/builtins/Unit/atomic_test.c:37:38: note: passing argument to parameter 'src' here
   37 | void __atomic_load_c(int size, void *src, void *dest,
      |                                      ^
/var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt/test/builtins/Unit/atomic_test.c:204:26: warning: passing 'const char *' to parameter of type 'void *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
  204 |       __atomic_load_c(n, data + 1, dst + 1, model);
      |                          ^~~~~~~~
/var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt/test/builtins/Unit/atomic_test.c:37:38: note: passing argument to parameter 'src' here
   37 | void __atomic_load_c(int size, void *src, void *dest,
      |                                      ^
2 warnings generated.
+ /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/Unit/X86_64LinuxConfig/Output/atomic_test.c.tmp
/var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/Unit/X86_64LinuxConfig/Output/atomic_test.c.script: line 1:  3440 Segmentation fault      (core dumped) /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/Unit/X86_64LinuxConfig/Output/atomic_test.c.tmp

--

********************
[...]
Failed Tests (1):
  Builtins-x86_64-linux :: atomic_test.c


Testing Time: 2.24s

Total Discovered Tests: 435
  Unsupported: 149 (34.25%)
  Passed     : 285 (65.52%)
  Failed     :   1 (0.23%)

4 warning(s) in tests
FAILED: test/builtins/CMakeFiles/check-builtins /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/CMakeFiles/check-builtins 
cd /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins && /usr/bin/python3.12 /usr/bin/lit -vv -j 32 /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/TestCases /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/Unit/I386LinuxConfig /var/tmp/portage/sys-libs/compiler-rt-18.1.8-r2/work/compiler-rt-18.1.8_build/test/builtins/Unit/X86_64LinuxConfig
ninja: build stopped: subcommand failed.
 * ERROR: sys-libs/compiler-rt-18.1.8-r2::gentoo failed (test phase):
 *   ninja -v -j32 -l32 check-builtins failed

# emerge --info =sys-libs/compiler-rt-18.1.8-r2
Portage 3.0.66.1 (python 3.12.8-final-0, default/linux/amd64/23.0/desktop/plasma/systemd, gcc-14, glibc-2.40-r5, 6.6.62-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-6.6.62-gentoo-x86_64-AMD_Ryzen_9_7950X3D_16-Core_Processor-with-glibc2.40
KiB Mem:   130977160 total,   8832492 free
KiB Swap:  134217724 total, 134208252 free
Timestamp of repository gentoo: Wed, 11 Dec 2024 08:15:00 +0000
Head commit of repository gentoo: 51b6b18eb9e3488f7c65facf907f60cb91aee120
sh dash 0.5.12
ld GNU ld (Gentoo 2.43 p3) 2.43.1
distcc 3.4 x86_64-pc-linux-gnu [disabled]
ccache version 4.10.2 [disabled]
app-misc/pax-utils:        1.3.8::gentoo
app-shells/bash:           5.2_p37::gentoo
dev-build/autoconf:        2.72-r1::gentoo
dev-build/automake:        1.16.5-r2::gentoo
dev-build/cmake:           3.30.6::gentoo
dev-build/libtool:         2.4.7-r4::gentoo
dev-build/make:            4.4.1-r100::gentoo
dev-build/meson:           1.5.2::gentoo
dev-java/java-config:      2.3.4::gentoo
dev-lang/perl:             5.40.0::gentoo
dev-lang/python:           3.12.8::gentoo, 3.13.1::gentoo
dev-lang/rust:             1.82.0-r101::gentoo
dev-util/ccache:           4.10.2-r1::gentoo
sys-apps/baselayout:       2.17::gentoo
sys-apps/sandbox:          2.40::gentoo
sys-apps/systemd:          256.7::gentoo
sys-devel/binutils:        2.43-r2::gentoo
sys-devel/binutils-config: 5.5.2::gentoo
sys-devel/clang:           18.1.8-r6::gentoo, 19.1.4::gentoo
sys-devel/gcc:             14.2.1_p20241116::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/lld:             18.1.8::gentoo, 19.1.4::gentoo
sys-devel/llvm:            18.1.8-r6::gentoo, 19.1.4::gentoo
sys-kernel/linux-headers:  6.6-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.40-r5::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.europe.gentoo.org/gentoo-portage
    priority: -1000
    volatile: True
    sync-rsync-verify-metamanifest: yes
    sync-rsync-extra-opts: 
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-max-age: 24

x-portage
    location: /usr/local/portage
    masters: gentoo
    priority: 0
    volatile: True

Binary Repositories:

gentoobinhost
    priority: 1
    sync-uri: https://gentoo.osuosl.org/releases/amd64/binpackages/23.0/x86-64-v3

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
AR="/usr/bin/gcc-ar"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -frecord-gcc-switches -march=znver4 -mshstk -flto=16 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d"
CXXFLAGS="-O2 -pipe -frecord-gcc-switches -march=znver4 -mshstk -flto=16 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="--keep-going y --with-bdeps y"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe -frecord-gcc-switches -march=znver4 -mshstk -flto=16 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live compress-build-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms sign split-elog split-log strict test unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe -frecord-gcc-switches -march=znver4 -mshstk -flto=16 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing"
GENTOO_MIRRORS="https://gentoo.mirror.garr.it/ https://mirror.netcologne.de/gentoo/ https://mirrors.evoluso.com/gentoo/ https://gentoo.mirrors.ovh.net/gentoo-distfiles/"
LANG="it_IT.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,--hash-style=gnu -Wl,--sort-common"
LEX="flex"
MAKEOPTS="-j32 -l32"
NM="/usr/bin/gcc-nm"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
RANLIB="/usr/bin/gcc-ranlib"
SHELL="/bin/bash"
USE="X a52 aac aalib acl acpi activities adns alsa amd64 ao audiofile avif bash-completion bluetooth branding brotli bzip2 cairo caps cdda cddb cdparanoia cdr cet colord crypt css cups curl dbus declarative dga djvu dri dts dvd dvdr encode exif expat fbcon ffmpeg fftw flac fontconfig foomaticdb fortran ftp gd gdbm geoip gif gimp gles2 gmp gnutls gphoto2 gpm graphviz gstreamer gtk gui handbook heif http2 iconv icu idn imagemagick imlib introspection ipv6 java javascript jbig jemalloc jpeg jpeg2k jpegxl kde kf6compat kwallet lame lapack lcms libass libnotify libsamplerate libtirpc llvm-libunwind lm-sensors lto lua lz4 lzma lzo mad magic man mhash mmap mng modules-sign mp3 mp4 mpeg multilib musicbrainz ncurses nls offensive ogg openal opencl opengl openmp opus pam pango pcre pdf pipewire plasma png policykit postscript ppds pulseaudio qml qt5 qt6 rdesktop readline recode samba screencast sctp sdl seccomp sndfile sockets sound speex spell sqlite ssl startup-notification svg symlink syslog systemd sysvipc taglib telemetry test test-rust theora threads tidy tiff truetype udev udisks unicode upower usb v4l vaapi vala verify-sig vim-syntax vnc vorbis vulkan wavpack wayland webp widgets win32codecs wmf wxwidgets x264 xattr xcb xft xinerama xml xpm xscreensaver xv xvid yahoo zip zlib zstd" ABI_X86="64" ADA_TARGET="gcc_12" ALSA_CARDS="hda-intel virmidi" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 avx512_bf16 avx512_bitalg avx512_vbmi2 avx512_vnni avx512_vpopcntdq avx512bw avx512cd avx512dq avx512f avx512ifma avx512vbmi avx512vl f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 vpclmulqdq" CURL_QUIC="ngtcp2" CURL_SSL="gnutls" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GRUB_PLATFORMS="efi-64" GUILE_SINGLE_TARGET="3-0" GUILE_TARGETS="3-0" INPUT_DEVICES="libinput" KERNEL="linux" L10N="it en en-GB en-US" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LLVM_TARGETS="AMDGPU" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PERL_FEATURES="ithreads quadmath" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres16" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby32" VIDEO_CARDS="amdgpu radeon radeonsi zink" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

# emerge -1pqv =sys-libs/compiler-rt-18.1.8-r2
[ebuild     U ] sys-libs/compiler-rt-18.1.8-r2 [18.1.8-r1] USE="atomic-builtins%* clang test verify-sig -debug" ABI_X86="32 (64)"
Comment 1 Paolo Pedroni 2024-12-11 14:10:28 UTC
With USE=-atomic-builtins I get:

UNSUPPORTED: Builtins-x86_64-linux :: atomic_test.c (212 of 435)

and tests as a whole succeed.
Comment 2 mojyack 2024-12-12 09:42:55 UTC
I've confirmed that. It seems to be a compiler or test case bug.
The compiler generates cmpxchg16b from __atomic_load_c(16,...) at atomic_test.c:196, which tries to write to a const variable.
Removing const from "data" definition at atomic_test.c:147 fixes the fault.
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-12-12 09:55:28 UTC
https://reviews.llvm.org/D92832