[ANNOUNCEMENT] Updated: mingw64-*-gcc-5.4.0-2 (x86/x86_64)
Tony Kelman
tony@kelman.net
Tue Feb 21 14:45:00 GMT 2017
> 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 http://llvm.org/releases/3.7.1/llvm-3.7.1.src.tar.xz | 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_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD=host \
-DCMAKE_C_COMPILER=i686-w64-mingw32-gcc \
-DCMAKE_CXX_COMPILER=i686-w64-mingw32-g++ \
-DCROSS_TOOLCHAIN_FLAGS_NATIVE=-DCMAKE_TOOLCHAIN_FILE=$PWD/NATIVE.cmake
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.
-Tony
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin
mailing list