https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112572

--- Comment #1 from Sam James <sjames at gcc dot gnu.org> ---
Attached a build script. I'm testing on the llvm-17.0.5 tag. All tests pass
with r14-5355-g3cd3a09b3f91a1 reverted.

Script to be run inside a git checkout of llvm-17.0.5:
```
#!/usr/bin/env bash
: ${CC:=gcc}
: ${CXX:=g++}
: ${CFLAGS:=-O3 -march=znver2}
: ${CXXFLAGS:=-O3 -march=znver2}
: ${CPPFLAGS:=-DNDEBUG}
: ${builddir:=/home/sam/data/build/llvm-project}
: ${srcdir:=/home/sam/git/llvm-project}

export CCACHE_DIR=/var/cache/ccache
export PYTHON=$(type -P python3.11)
export EPYTHON=python3.11

components=(
        compiler-rt
)

mkdir -p "${builddir}"

cmakeargs=(
        -B"${builddir}"
        -S"${srcdir}/llvm"
        -GNinja
        -DBUILD_SHARED_LIBS=OFF
        -DCMAKE_BUILD_TYPE=RelWithDebInfo
        -DLLVM_BUILD_TESTS=ON
        -DLLVM_INCLUDE_TESTS=ON
        -DLLVM_CCACHE_BUILD=ON
        -DLLVM_ENABLE_ASSERTIONS=NO
        -DLLVM_ENABLE_BINDINGS=OFF
        -DLLVM_ENABLE_PROJECTS="llvm" # ;clang;clang-tools-extra
        -DLLVM_ENABLE_ZSTD=yes
        -DLLVM_BUILD_LLVM_DYLIB=ON
        -DLLVM_ENABLE_FFI=yes
        -DLLVM_ENABLE_EH=ON -DLLVM_ENABLE_RTTI=ON
        -DLLVM_LINK_LLVM_DYLIB=ON
        -DLLVM_TARGETS_TO_BUILD="X86"
        -DLLVM_TARGETS_TO_BUILD=
       
-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="AArch64;AMDGPU;ARM;AVR;BPF;Hexagon;Lanai;LoongArch;MSP430;Mips;NVPTX;PowerPC;RISCV;Sparc;SystemZ;VE;WebAssembly;X86;XCore"
        -DLLVM_INCLUDE_BENCHMARKS=OFF
        #-DLLVM_USE_LINKER=lld
        -DCMAKE_C_FLAGS="${CFLAGS}"
        -DCMAKE_CXX_FLAGS="${CXXFLAGS}"
        #-DLLVM_EXTERNAL_LIT="${EPREFIX:-/}/usr/bin/lit"
        -DPython3_EXECUTABLE="${PYTHON}"
        -DPython_EXECUTABLE="${PYTHON}"
)

export CC CXX CFLAGS CXXFLAGS CPPFLAGS

${CMAKE:-cmake} "${cmakeargs[@]}" "$@"
${NINJA:-ninja} -C "${builddir}"
ret=$?

for component in "${components[@]}" ; do
        mkdir -p "${builddir}-${component}"
        ${CMAKE:-cmake} "${cmakeargs[@]}" -B "${builddir}-${component}"
-S"${srcdir}/${component}" -DCOMPILER_RT_BUILD_SANITIZERS=ON
-DLLVM_BUILD_TESTS=ON "$@"
        ${NINJA:-ninja} -C "${builddir}-${component}" || exit 1
done

exit 0
```

Invocation:
```
bash ~/scripts/build-llvm ; ninja -C /home/sam/data/build/llvm-project
check-all
```

Failures:
```
********************
Failed Tests (22):
  LLVM :: CodeGen/X86/oddshuffles.ll
  LLVM :: CodeGen/X86/vector-interleaved-load-i64-stride-4.ll
  LLVM :: CodeGen/X86/vector-interleaved-load-i8-stride-3.ll
  LLVM :: CodeGen/X86/vector-interleaved-store-i64-stride-4.ll
  LLVM :: CodeGen/X86/vector-interleaved-store-i8-stride-3.ll
  LLVM :: CodeGen/X86/vector-interleaved-store-i8-stride-4.ll
  LLVM :: CodeGen/X86/vector-shuffle-combining-sse41.ll
  LLVM :: CodeGen/X86/x86-interleaved-access.ll
  LLVM ::
Transforms/InterleavedAccess/X86/interleaved-accesses-64bits-avx-inseltpoison.ll
  LLVM :: Transforms/InterleavedAccess/X86/interleaved-accesses-64bits-avx.ll
  LLVM :: Transforms/InterleavedAccess/X86/interleavedLoad-inseltpoison.ll
  LLVM :: Transforms/InterleavedAccess/X86/interleavedLoad.ll
  LLVM :: Transforms/InterleavedAccess/X86/interleavedStore-inseltpoison.ll
  LLVM :: Transforms/InterleavedAccess/X86/interleavedStore.ll
  LLVM-Unit :: CodeGen/./CodeGenTests/71/131
  LLVM-Unit :: CodeGen/./CodeGenTests/72/131
  LLVM-Unit :: CodeGen/./CodeGenTests/73/131
  LLVM-Unit :: CodeGen/./CodeGenTests/74/131
  LLVM-Unit :: CodeGen/./CodeGenTests/75/131
  LLVM-Unit :: CodeGen/./CodeGenTests/76/131
  LLVM-Unit :: CodeGen/./CodeGenTests/77/131
  LLVM-Unit :: CodeGen/./CodeGenTests/79/131
```

e.g.
```

********************
FAIL: LLVM ::
Transforms/InterleavedAccess/X86/interleaved-accesses-64bits-avx.ll (39005 of
50818)
******************** TEST 'LLVM ::
Transforms/InterleavedAccess/X86/interleaved-accesses-64bits-avx.ll' FAILED
********************
Script:
--
: 'RUN: at line 2';   /home/sam/data/build/llvm-project/bin/opt <
/home/sam/git/llvm-project/llvm/test/Transforms/InterleavedAccess/X86/interleaved-accesses-64bits-avx.ll
-mtriple=x86_64-pc-linux  -mattr=+avx -interleaved-access -S |
/home/sam/data/build/llvm-project/bin/FileCheck
/home/sam/git/llvm-project/llvm/test/Transforms/InterleavedAccess/X86/interleaved-accesses-64bits-avx.ll
--
Exit Code: 2

Command Output (stderr):
--
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and
include the crash backtrace.
Stack dump:
0.      Program arguments: /home/sam/data/build/llvm-project/bin/opt
-mtriple=x86_64-pc-linux -mattr=+avx -interleaved-access -S
1.      Running pass 'Function Pass Manager' on module '<stdin>'.
2.      Running pass 'Interleaved Access Pass' on function '@load_factorf64_4'
#0 0x00007fedafb8253f llvm::sys::PrintStackTrace(llvm::raw_ostream&, int)
/home/sam/git/llvm-project/llvm/lib/Support/Unix/Signals.inc:602:22
#1 0x00007fedafb80174 llvm::sys::RunSignalHandlers()
/home/sam/git/llvm-project/llvm/lib/Support/Signals.cpp:104:20
#2 0x00007fedafb802f6 SignalHandler(int)
/home/sam/git/llvm-project/llvm/lib/Support/Unix/Signals.inc:413:1
#3 0x00007fedae86dbe0 (/usr/lib64/libc.so.6+0x39be0)
#4 0x00007fedb39120f5
(/home/sam/data/build/llvm-project/bin/../lib/libLLVM-17.so+0x4b120f5)
FileCheck error: '<stdin>' is empty.
FileCheck command line:  /home/sam/data/build/llvm-project/bin/FileCheck
/home/sam/git/llvm-project/llvm/test/Transforms/InterleavedAccess/X86/interleaved-accesses-64bits-avx.ll
```

Reply via email to