This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-2 (x86/x86_64)

> Do you have a small test case for this instead of running the entire
> test suite? I'm not sure how much time the full test suite takes.

Don't have a small test case, but I do have a big one. I've been
verifying that the patch helps in cross-compiles from opensuse
where it's a lot faster to build a patched gcc (and the test case)
than in cygwin.

Large test case (takes about 15 minutes on my year-old laptop):

curl -L | tar -xJf -
mkdir -p llvmbuild/bin
cd llvmbuild
echo 'set(CMAKE_C_COMPILER gcc)' > NATIVE.cmake
echo 'set(CMAKE_CXX_COMPILER g++)' >> NATIVE.cmake
cp /usr/i686-w64-mingw32/sys-root/mingw/bin/*.dll bin
cmake ../llvm-3.7.1.src -DCMAKE_SYSTEM_NAME=Windows \
  -DCMAKE_C_COMPILER=i686-w64-mingw32-gcc \
  -DCMAKE_CXX_COMPILER=i686-w64-mingw32-g++ \
make -j`nproc` opt
bin/opt.exe -slp-vectorizer \
  -S ../llvm-3.7.1.src/test/Transforms/SLPVectorizer/X86/vector.ll

That'll give the following sane LLVM IR output on gcc 4.9, or crash on
unpatched 5+.

; ModuleID = '../llvm-3.7.1.src/test/Transforms/SLPVectorizer/X86/vector.ll'
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
target triple = "x86_64-apple-macosx10.8.0"

define void @test(<4 x i32> %in, <4 x i32> %in2) {
  %k = icmp eq <4 x i32> %in, %in2
  ret void

> I'll to include the update in the next 5.x release.

Thanks! We're mainly trying to double-check that the patch doesn't
introduce any regressions, cause more problems than it solves.


Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]