Merge branch '3.2' into 3.3

This commit is contained in:
Danny Rawlins 2017-01-29 11:37:35 +11:00
commit 0a25924989
38 changed files with 251 additions and 118 deletions

View File

@ -1,47 +1,47 @@
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/lib32/
drwxr-xr-x root/root usr/lib32/elfutils/
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_aarch64-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_aarch64.so -> libebl_aarch64-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_alpha-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_alpha.so -> libebl_alpha-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_arm-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_arm.so -> libebl_arm-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_bpf-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_bpf.so -> libebl_bpf-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_i386-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_i386.so -> libebl_i386-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_ia64-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_ia64.so -> libebl_ia64-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_m68k-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_m68k.so -> libebl_m68k-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_ppc-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_ppc.so -> libebl_ppc-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_ppc64-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_ppc64.so -> libebl_ppc64-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_s390-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_s390.so -> libebl_s390-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_sh-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_sh.so -> libebl_sh-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_sparc-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_sparc.so -> libebl_sparc-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_tilegx-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_tilegx.so -> libebl_tilegx-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_x86_64-0.167.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_x86_64.so -> libebl_x86_64-0.167.so
-rwxr-xr-x root/root usr/lib32/libasm-0.167.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_aarch64-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_aarch64.so -> libebl_aarch64-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_alpha-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_alpha.so -> libebl_alpha-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_arm-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_arm.so -> libebl_arm-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_bpf-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_bpf.so -> libebl_bpf-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_i386-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_i386.so -> libebl_i386-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_ia64-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_ia64.so -> libebl_ia64-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_m68k-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_m68k.so -> libebl_m68k-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_ppc-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_ppc.so -> libebl_ppc-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_ppc64-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_ppc64.so -> libebl_ppc64-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_s390-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_s390.so -> libebl_s390-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_sh-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_sh.so -> libebl_sh-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_sparc-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_sparc.so -> libebl_sparc-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_tilegx-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_tilegx.so -> libebl_tilegx-0.168.so
-rwxr-xr-x root/root usr/lib32/elfutils/libebl_x86_64-0.168.so
lrwxrwxrwx root/root usr/lib32/elfutils/libebl_x86_64.so -> libebl_x86_64-0.168.so
-rwxr-xr-x root/root usr/lib32/libasm-0.168.so
-rw-r--r-- root/root usr/lib32/libasm.a
lrwxrwxrwx root/root usr/lib32/libasm.so -> libasm.so.1
lrwxrwxrwx root/root usr/lib32/libasm.so.1 -> libasm-0.167.so
-rwxr-xr-x root/root usr/lib32/libdw-0.167.so
lrwxrwxrwx root/root usr/lib32/libasm.so.1 -> libasm-0.168.so
-rwxr-xr-x root/root usr/lib32/libdw-0.168.so
-rw-r--r-- root/root usr/lib32/libdw.a
lrwxrwxrwx root/root usr/lib32/libdw.so -> libdw.so.1
lrwxrwxrwx root/root usr/lib32/libdw.so.1 -> libdw-0.167.so
lrwxrwxrwx root/root usr/lib32/libdw.so.1 -> libdw-0.168.so
-rw-r--r-- root/root usr/lib32/libebl.a
-rwxr-xr-x root/root usr/lib32/libelf-0.167.so
-rwxr-xr-x root/root usr/lib32/libelf-0.168.so
-rw-r--r-- root/root usr/lib32/libelf.a
lrwxrwxrwx root/root usr/lib32/libelf.so -> libelf.so.1
lrwxrwxrwx root/root usr/lib32/libelf.so.1 -> libelf-0.167.so
lrwxrwxrwx root/root usr/lib32/libelf.so.1 -> libelf-0.168.so
drwxr-xr-x root/root usr/lib32/pkgconfig/
-rw-r--r-- root/root usr/lib32/pkgconfig/libdw.pc
-rw-r--r-- root/root usr/lib32/pkgconfig/libelf.pc

View File

@ -1 +1 @@
efc6c2067dfad5646777e93e85222e8f elfutils-0.167.tar.bz2
52adfa40758d0d39e5d5c57689bf38d6 elfutils-0.168.tar.bz2

View File

@ -4,7 +4,7 @@
# Depends on: bzip2-32 xz-32 zlib-32 elfutils
name=elfutils-32
version=0.167
version=0.168
release=1
source=(https://fedorahosted.org/releases/e/l/elfutils/$version/elfutils-$version.tar.bz2)

View File

@ -14,8 +14,12 @@ build() {
# needed for static linking, e.g. dmsetup.static
sed -i '/^Libs:/s/-ludev/-ludev -lrt/' src/libudev/libudev.pc.in
# fix for gperf 3.1
# https://github.com/gentoo/eudev/commit/5bab4d8de0dcbb8e2e7d4d5125b4aea1652a0d60
sed -i '/*keyboard_lookup_key/d' src/udev/udev-builtin-keyboard.c
autoreconf --force --install
./configure --prefix=/usr \
--libdir=/usr/lib32 \
--sbindir=/sbin --bindir=/sbin \

View File

@ -1,7 +1,8 @@
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/lib32/
-rw-r--r-- root/root usr/lib32/libglut.a
-rwxr-xr-x root/root usr/lib32/libglut.la
lrwxrwxrwx root/root usr/lib32/libglut.so -> libglut.so.3.9.0
lrwxrwxrwx root/root usr/lib32/libglut.so.3 -> libglut.so.3.9.0
-rwxr-xr-x root/root usr/lib32/libglut.so.3.9.0
lrwxrwxrwx root/root usr/lib32/libglut.so -> libglut.so.3
lrwxrwxrwx root/root usr/lib32/libglut.so.3 -> libglut.so.3.10.0
-rwxr-xr-x root/root usr/lib32/libglut.so.3.10.0
drwxr-xr-x root/root usr/lib32/pkgconfig/
-rw-r--r-- root/root usr/lib32/pkgconfig/freeglut.pc

View File

@ -1 +1 @@
918ffbddcffbac83c218bc52355b6d5a freeglut-2.8.1.tar.gz
90c3ca4dd9d51cf32276bc5344ec9754 freeglut-3.0.0.tar.gz

View File

@ -1,21 +1,26 @@
# Description: a free alternative to the OpenGL Utility Toolkit (GLUT) library
# URL: http://freeglut.sourceforge.net
# URL: https://freeglut.sourceforge.net
# Maintainer: CRUX compat-32 Team, compat-32-ports at crux dot nu
# Depends on: glu-32 xorg-libxi-32 freeglut
# Depends on: glu-32 xorg-libxi-32 freeglut xorg-libxxf86vm-32
name=freeglut-32
version=2.8.1
version=3.0.0
release=1
source=(http://download.sourceforge.net/freeglut/freeglut-$version.tar.gz)
source=(https://download.sourceforge.net/freeglut/freeglut-$version.tar.gz)
build() {
cd freeglut-$version
sed -i -e '/^SUBDIRS =/s/progs //' Makefile.in
./configure --prefix=/usr \
--libdir=/usr/lib32 \
--disable-warnings \
--disable-dependency-tracking
make
make DESTDIR=$PKG install
rm -rf $PKG/usr/include
cd freeglut-$version
install -d build
cd build
cmake .. \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib32 \
-DCMAKE_BUILD_TYPE=Release
make
make DESTDIR=$PKG install
rm -r $PKG/usr/include
}

View File

@ -1,31 +1,31 @@
drwxr-xr-x root/root lib32/
drwxr-xr-x root/root lib32/gio/
drwxr-xr-x root/root lib32/gio/modules/
lrwxrwxrwx root/root lib32/libgio-2.0.so.0 -> libgio-2.0.so.0.5000.0
-rwxr-xr-x root/root lib32/libgio-2.0.so.0.5000.0
lrwxrwxrwx root/root lib32/libglib-2.0.so.0 -> libglib-2.0.so.0.5000.0
-rwxr-xr-x root/root lib32/libglib-2.0.so.0.5000.0
lrwxrwxrwx root/root lib32/libgmodule-2.0.so.0 -> libgmodule-2.0.so.0.5000.0
-rwxr-xr-x root/root lib32/libgmodule-2.0.so.0.5000.0
lrwxrwxrwx root/root lib32/libgobject-2.0.so.0 -> libgobject-2.0.so.0.5000.0
-rwxr-xr-x root/root lib32/libgobject-2.0.so.0.5000.0
lrwxrwxrwx root/root lib32/libgthread-2.0.so.0 -> libgthread-2.0.so.0.5000.0
-rwxr-xr-x root/root lib32/libgthread-2.0.so.0.5000.0
lrwxrwxrwx root/root lib32/libgio-2.0.so.0 -> libgio-2.0.so.0.5000.2
-rwxr-xr-x root/root lib32/libgio-2.0.so.0.5000.2
lrwxrwxrwx root/root lib32/libglib-2.0.so.0 -> libglib-2.0.so.0.5000.2
-rwxr-xr-x root/root lib32/libglib-2.0.so.0.5000.2
lrwxrwxrwx root/root lib32/libgmodule-2.0.so.0 -> libgmodule-2.0.so.0.5000.2
-rwxr-xr-x root/root lib32/libgmodule-2.0.so.0.5000.2
lrwxrwxrwx root/root lib32/libgobject-2.0.so.0 -> libgobject-2.0.so.0.5000.2
-rwxr-xr-x root/root lib32/libgobject-2.0.so.0.5000.2
lrwxrwxrwx root/root lib32/libgthread-2.0.so.0 -> libgthread-2.0.so.0.5000.2
-rwxr-xr-x root/root lib32/libgthread-2.0.so.0.5000.2
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/lib32/
drwxr-xr-x root/root usr/lib32/glib-2.0/
drwxr-xr-x root/root usr/lib32/glib-2.0/include/
-rw-r--r-- root/root usr/lib32/glib-2.0/include/glibconfig.h
-rwxr-xr-x root/root usr/lib32/libgio-2.0.la
lrwxrwxrwx root/root usr/lib32/libgio-2.0.so -> ../../lib32/libgio-2.0.so.0.5000.0
lrwxrwxrwx root/root usr/lib32/libgio-2.0.so -> ../../lib32/libgio-2.0.so.0.5000.2
-rwxr-xr-x root/root usr/lib32/libglib-2.0.la
lrwxrwxrwx root/root usr/lib32/libglib-2.0.so -> ../../lib32/libglib-2.0.so.0.5000.0
lrwxrwxrwx root/root usr/lib32/libglib-2.0.so -> ../../lib32/libglib-2.0.so.0.5000.2
-rwxr-xr-x root/root usr/lib32/libgmodule-2.0.la
lrwxrwxrwx root/root usr/lib32/libgmodule-2.0.so -> ../../lib32/libgmodule-2.0.so.0.5000.0
lrwxrwxrwx root/root usr/lib32/libgmodule-2.0.so -> ../../lib32/libgmodule-2.0.so.0.5000.2
-rwxr-xr-x root/root usr/lib32/libgobject-2.0.la
lrwxrwxrwx root/root usr/lib32/libgobject-2.0.so -> ../../lib32/libgobject-2.0.so.0.5000.0
lrwxrwxrwx root/root usr/lib32/libgobject-2.0.so -> ../../lib32/libgobject-2.0.so.0.5000.2
-rwxr-xr-x root/root usr/lib32/libgthread-2.0.la
lrwxrwxrwx root/root usr/lib32/libgthread-2.0.so -> ../../lib32/libgthread-2.0.so.0.5000.0
lrwxrwxrwx root/root usr/lib32/libgthread-2.0.so -> ../../lib32/libgthread-2.0.so.0.5000.2
drwxr-xr-x root/root usr/lib32/pkgconfig/
-rw-r--r-- root/root usr/lib32/pkgconfig/gio-2.0.pc
-rw-r--r-- root/root usr/lib32/pkgconfig/gio-unix-2.0.pc

View File

@ -1 +1 @@
0fd6d3339cd7e4714eb643c6fa4b6499 glib-2.50.0.tar.xz
5eeb2bfaf78a07be59585e8b6e80b1d6 glib-2.50.2.tar.xz

View File

@ -1,12 +1,12 @@
# Description: Low-level data structure handling, portability wrappers, and interfaces for runtime functionality
# URL: http://www.gtk.org/
# URL: https://www.gtk.org/
# Maintainer: CRUX compat-32 Team, compat-32-ports at crux dot nu
# Depends on: libffi-32 libpcre-32 python-32 util-linux-32 glib
name=glib-32
version=2.50.0
version=2.50.2
release=1
source=(http://download.gnome.org/sources/glib/${version:0:4}/glib-$version.tar.xz)
source=(https://download.gnome.org/sources/glib/${version:0:4}/glib-$version.tar.xz)
build() {
cd glib-$version

View File

@ -2,6 +2,6 @@ drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/lib32/
-rw-r--r-- root/root usr/lib32/libgcrypt.a
-rwxr-xr-x root/root usr/lib32/libgcrypt.la
lrwxrwxrwx root/root usr/lib32/libgcrypt.so -> libgcrypt.so.20.1.3
lrwxrwxrwx root/root usr/lib32/libgcrypt.so.20 -> libgcrypt.so.20.1.3
-rwxr-xr-x root/root usr/lib32/libgcrypt.so.20.1.3
lrwxrwxrwx root/root usr/lib32/libgcrypt.so -> libgcrypt.so.20.1.5
lrwxrwxrwx root/root usr/lib32/libgcrypt.so.20 -> libgcrypt.so.20.1.5
-rwxr-xr-x root/root usr/lib32/libgcrypt.so.20.1.5

View File

@ -1 +1 @@
c869e542cc13a1c28d8055487bf7f5c4 libgcrypt-1.7.3.tar.bz2
74c8b4b2118946dcbfec5ff1cbf97177 libgcrypt-1.7.5.tar.bz2

View File

@ -4,7 +4,7 @@
# Depends on: libgcrypt libgpg-error-32
name=libgcrypt-32
version=1.7.3
version=1.7.5
release=1
source=(ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-$version.tar.bz2)

View File

@ -2,6 +2,6 @@ drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/lib32/
-rw-r--r-- root/root usr/lib32/libgpg-error.a
-rwxr-xr-x root/root usr/lib32/libgpg-error.la
lrwxrwxrwx root/root usr/lib32/libgpg-error.so -> libgpg-error.so.0.20.0
lrwxrwxrwx root/root usr/lib32/libgpg-error.so.0 -> libgpg-error.so.0.20.0
-rwxr-xr-x root/root usr/lib32/libgpg-error.so.0.20.0
lrwxrwxrwx root/root usr/lib32/libgpg-error.so -> libgpg-error.so.0.21.0
lrwxrwxrwx root/root usr/lib32/libgpg-error.so.0 -> libgpg-error.so.0.21.0
-rwxr-xr-x root/root usr/lib32/libgpg-error.so.0.21.0

View File

@ -1 +1 @@
d9fa545922a5060cbfbd87464bc31686 libgpg-error-1.25.tar.bz2
97456709dbbcbb69354317ffe3e347cd libgpg-error-1.26.tar.bz2

View File

@ -4,7 +4,7 @@
# Depends on: libgpg-error
name=libgpg-error-32
version=1.25
version=1.26
release=1
source=(https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-$version.tar.bz2)

View File

@ -2,9 +2,9 @@ drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/lib32/
-rw-r--r-- root/root usr/lib32/libpcre.a
-rwxr-xr-x root/root usr/lib32/libpcre.la
lrwxrwxrwx root/root usr/lib32/libpcre.so -> libpcre.so.1.2.7
lrwxrwxrwx root/root usr/lib32/libpcre.so.1 -> libpcre.so.1.2.7
-rwxr-xr-x root/root usr/lib32/libpcre.so.1.2.7
lrwxrwxrwx root/root usr/lib32/libpcre.so -> libpcre.so.1.2.8
lrwxrwxrwx root/root usr/lib32/libpcre.so.1 -> libpcre.so.1.2.8
-rwxr-xr-x root/root usr/lib32/libpcre.so.1.2.8
-rw-r--r-- root/root usr/lib32/libpcrecpp.a
-rwxr-xr-x root/root usr/lib32/libpcrecpp.la
lrwxrwxrwx root/root usr/lib32/libpcrecpp.so -> libpcrecpp.so.0.0.1

View File

@ -1 +1 @@
e3fca7650a0556a2647821679d81f585 pcre-8.39.tar.bz2
41a842bf7dcecd6634219336e2167d1d pcre-8.40.tar.bz2

View File

@ -3,7 +3,7 @@
# Maintainer: CRUX compat-32 Team, compat-32-ports at crux dot nu
name=libpcre-32
version=8.39
version=8.40
release=1
source=(ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-$version.tar.bz2)

View File

@ -34,7 +34,7 @@ drwxr-xr-x root/root usr/lib32/cmake/llvm/
-rw-r--r-- root/root usr/lib32/cmake/llvm/LLVMProcessSources.cmake
-rw-r--r-- root/root usr/lib32/cmake/llvm/TableGen.cmake
-rw-r--r-- root/root usr/lib32/cmake/llvm/VersionFromVCS.cmake
lrwxrwxrwx root/root usr/lib32/libLLVM-3.9.0.so -> libLLVM-3.9.so
lrwxrwxrwx root/root usr/lib32/libLLVM-3.9.1.so -> libLLVM-3.9.so
-rwxr-xr-x root/root usr/lib32/libLLVM-3.9.so
lrwxrwxrwx root/root usr/lib32/libLLVM.so -> libLLVM-3.9.so
-rw-r--r-- root/root usr/lib32/libLLVMAMDGPUAsmParser.a

View File

@ -1 +1,2 @@
f2093e98060532449eb7d2fcfd0bc6c6 llvm-3.9.0.src.tar.xz
7b8219e2b0d15e96a09dbe8bc2614777 0009-Revert-AMDGPU-Fix-an-interaction-between-WQM-and-pol.patch
3259018a7437e157f3642df80f1983ea llvm-3.9.1.src.tar.xz

View File

@ -0,0 +1,120 @@
From d6b5bd6f44e8091a4c4870f1c52921c25a4f8cca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Sat, 21 Jan 2017 12:35:36 +0100
Subject: [PATCH] Revert "AMDGPU: Fix an interaction between WQM and polygon
stippling"
https://bugs.gentoo.org/603858
---
lib/Target/AMDGPU/SIInstructions.td | 1 -
lib/Target/AMDGPU/SIWholeQuadMode.cpp | 7 +++++
test/CodeGen/AMDGPU/wqm.ll | 49 +++--------------------------------
3 files changed, 11 insertions(+), 46 deletions(-)
diff --git a/lib/Target/AMDGPU/SIInstructions.td b/lib/Target/AMDGPU/SIInstructions.td
index dde5f2fc6b4..18b7d5d62ef 100644
--- a/lib/Target/AMDGPU/SIInstructions.td
+++ b/lib/Target/AMDGPU/SIInstructions.td
@@ -2029,7 +2029,6 @@ def SI_RETURN : PseudoInstSI <
let hasSideEffects = 1;
let SALU = 1;
let hasNoSchedulingInfo = 1;
- let DisableWQM = 1;
}
let Uses = [EXEC], Defs = [EXEC, VCC, M0],
diff --git a/lib/Target/AMDGPU/SIWholeQuadMode.cpp b/lib/Target/AMDGPU/SIWholeQuadMode.cpp
index 1534d582569..b200c153df0 100644
--- a/lib/Target/AMDGPU/SIWholeQuadMode.cpp
+++ b/lib/Target/AMDGPU/SIWholeQuadMode.cpp
@@ -219,6 +219,13 @@ char SIWholeQuadMode::scanInstructions(MachineFunction &MF,
markInstruction(MI, Flags, Worklist);
GlobalFlags |= Flags;
}
+
+ if (WQMOutputs && MBB.succ_empty()) {
+ // This is a prolog shader. Make sure we go back to exact mode at the end.
+ Blocks[&MBB].OutNeeds = StateExact;
+ Worklist.push_back(&MBB);
+ GlobalFlags |= StateExact;
+ }
}
return GlobalFlags;
diff --git a/test/CodeGen/AMDGPU/wqm.ll b/test/CodeGen/AMDGPU/wqm.ll
index 41e42645788..809a7ba9b82 100644
--- a/test/CodeGen/AMDGPU/wqm.ll
+++ b/test/CodeGen/AMDGPU/wqm.ll
@@ -17,18 +17,17 @@ main_body:
;CHECK-LABEL: {{^}}test2:
;CHECK-NEXT: ; %main_body
;CHECK-NEXT: s_wqm_b64 exec, exec
+;CHECK: image_sample
;CHECK-NOT: exec
-define amdgpu_ps void @test2(<8 x i32> inreg %rsrc, <4 x i32> inreg %sampler, float addrspace(1)* inreg %ptr, <4 x i32> %c) {
+;CHECK: _load_dword v0,
+define amdgpu_ps float @test2(<8 x i32> inreg %rsrc, <4 x i32> inreg %sampler, float addrspace(1)* inreg %ptr, <4 x i32> %c) {
main_body:
%c.1 = call <4 x float> @llvm.SI.image.sample.v4i32(<4 x i32> %c, <8 x i32> %rsrc, <4 x i32> %sampler, i32 15, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0)
%c.2 = bitcast <4 x float> %c.1 to <4 x i32>
%c.3 = extractelement <4 x i32> %c.2, i32 0
%gep = getelementptr float, float addrspace(1)* %ptr, i32 %c.3
%data = load float, float addrspace(1)* %gep
-
- call void @llvm.SI.export(i32 15, i32 1, i32 1, i32 0, i32 1, float %data, float undef, float undef, float undef)
-
- ret void
+ ret float %data
}
; ... but disabled for stores (and, in this simple case, not re-enabled).
@@ -415,46 +414,6 @@ entry:
ret void
}
-; Must return to exact at the end of a non-void returning shader,
-; otherwise the EXEC mask exported by the epilog will be wrong. This is true
-; even if the shader has no kills, because a kill could have happened in a
-; previous shader fragment.
-;
-; CHECK-LABEL: {{^}}test_nonvoid_return:
-; CHECK: s_mov_b64 [[LIVE:s\[[0-9]+:[0-9]+\]]], exec
-; CHECK: s_wqm_b64 exec, exec
-;
-; CHECK: s_and_b64 exec, exec, [[LIVE]]
-; CHECK-NOT: exec
-define amdgpu_ps <4 x float> @test_nonvoid_return() nounwind {
- %tex = call <4 x float> @llvm.SI.image.sample.v4i32(<4 x i32> undef, <8 x i32> undef, <4 x i32> undef, i32 15, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0)
- %tex.i = bitcast <4 x float> %tex to <4 x i32>
- %dtex = call <4 x float> @llvm.SI.image.sample.v4i32(<4 x i32> %tex.i, <8 x i32> undef, <4 x i32> undef, i32 15, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0)
- ret <4 x float> %dtex
-}
-
-; CHECK-LABEL: {{^}}test_nonvoid_return_unreachable:
-; CHECK: s_mov_b64 [[LIVE:s\[[0-9]+:[0-9]+\]]], exec
-; CHECK: s_wqm_b64 exec, exec
-;
-; CHECK: s_and_b64 exec, exec, [[LIVE]]
-; CHECK-NOT: exec
-define amdgpu_ps <4 x float> @test_nonvoid_return_unreachable(i32 inreg %c) nounwind {
-entry:
- %tex = call <4 x float> @llvm.SI.image.sample.v4i32(<4 x i32> undef, <8 x i32> undef, <4 x i32> undef, i32 15, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0)
- %tex.i = bitcast <4 x float> %tex to <4 x i32>
- %dtex = call <4 x float> @llvm.SI.image.sample.v4i32(<4 x i32> %tex.i, <8 x i32> undef, <4 x i32> undef, i32 15, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0)
-
- %cc = icmp sgt i32 %c, 0
- br i1 %cc, label %if, label %else
-
-if:
- store volatile <4 x float> %dtex, <4 x float>* undef
- unreachable
-
-else:
- ret <4 x float> %dtex
-}
declare void @llvm.amdgcn.image.store.v4i32(<4 x float>, <4 x i32>, <8 x i32>, i32, i1, i1, i1, i1) #1
declare void @llvm.amdgcn.buffer.store.f32(float, <4 x i32>, i32, i32, i1, i1) #1
--
2.11.0

View File

@ -5,13 +5,16 @@
# Depends on: python-32 llvm
name=llvm-32
version=3.9.0
release=2
source=(http://llvm.org/releases/$version/llvm-$version.src.tar.xz)
version=3.9.1
release=1
source=(http://llvm.org/releases/$version/llvm-$version.src.tar.xz
0009-Revert-AMDGPU-Fix-an-interaction-between-WQM-and-pol.patch)
build() {
cd llvm-$version.src
patch -p1 -i $SRC/0009-Revert-AMDGPU-Fix-an-interaction-between-WQM-and-pol.patch
install -d build $SRC/keep
cd build

View File

@ -1,3 +1,3 @@
f18e1ebfe07969c84b890e45843edcb7 nss-3.27.1.tar.gz
e98d48435cee5792f97ef7fc35a602c3 nss-3.28.1.tar.gz
17226659298a9d9bb3f323186d220f6f nss-config.in
a796e6ab6c87573ffb649ce8769bc07a nss.pc.in

View File

@ -4,9 +4,9 @@
# Depends on: nss nspr-32 sqlite3-32 zlib-32
name=nss-32
version=3.27.1
version=3.28.1
release=1
source=(http://ftp.mozilla.org/pub/security/nss/releases/NSS_${version/./_}_RTM/src/nss-$version.tar.gz
source=(http://ftp.mozilla.org/pub/security/nss/releases/NSS_${version//./_}_RTM/src/nss-$version.tar.gz
nss-config.in nss.pc.in)
build() {
@ -20,7 +20,6 @@ build() {
export NSPR_LIB_DIR=/usr/lib32
export NSS_USE_SYSTEM_SQLITE=1
export NSS_ENABLE_ECC=1
export NSS_ENABLE_TLS_1_3=1
export BUILD_OPT=1
export XCFLAGS="${CFLAGS}"
export NSS_DISABLE_GTESTS=1

View File

@ -1,3 +1,3 @@
2a0b82fe7740163a908a23c4f13f2690 openssl-1.0.2a-32bit_x86_64.patch
278954b1b014f8a3f73b12d7230ef902 openssl-1.0.2d-parallel-build.patch
96322138f0b69e61b7212bc53d5e912b openssl-1.0.2j.tar.gz
f965fc0bf01bf882b31314b61391ae65 openssl-1.0.2k.tar.gz

View File

@ -1,11 +1,11 @@
# Description: Secure Sockets Layer and Transport Layer Security tools
# URL: http://www.openssl.org/
# URL: https://www.openssl.org/
# Maintainer: CRUX compat-32 Team, compat-32-ports at crux dot nu
name=openssl-32
version=1.0.2j
version=1.0.2k
release=1
source=(http://www.openssl.org/source/openssl-$version.tar.gz
source=(https://www.openssl.org/source/openssl-$version.tar.gz
openssl-1.0.2a-32bit_x86_64.patch
openssl-1.0.2d-parallel-build.patch)

View File

@ -1 +1 @@
8582a28b15f53110c88d8043d9f55bcf orc-0.4.25.tar.xz
8e9bef677bae289d3324d81c337a4507 orc-0.4.26.tar.xz

View File

@ -4,9 +4,9 @@
# Depends on: orc
name=orc-32
version=0.4.25
version=0.4.26
release=1
source=(http://gstreamer.freedesktop.org/src/orc/orc-$version.tar.xz)
source=(https://gstreamer.freedesktop.org/src/orc/orc-$version.tar.xz)
build() {
cd orc-$version

View File

@ -1 +1 @@
6b4fc0d8f7f02dd56bbde10a7c497a05 sqlite-autoconf-3150200.tar.gz
5a153ef1fd2fa5845ada74deabc68e32 sqlite-autoconf-3160200.tar.gz

View File

@ -1,14 +1,14 @@
# Description: SQL database engine
# URL: http://www.sqlite.org/
# URL: https://www.sqlite.org/
# Maintainer: CRUX compat-32 Team, compat-32-ports at crux dot nu
# Depends on: ncurses-32 readline-32 sqlite3
name=sqlite3-32
version=3.15.2
version=3.16.2
release=1
_version=$(printf "%i%.2i%.2i%.2i" ${version//./ })
source=(http://www.sqlite.org/2016/sqlite-autoconf-${_version}.tar.gz)
source=(https://www.sqlite.org/2017/sqlite-autoconf-${_version}.tar.gz)
build() {
cd sqlite-autoconf-${_version}

View File

@ -1 +1 @@
07b6845f48a421ad5844aa9d58edb837 util-linux-2.29.tar.xz
0cbb6d16ab9c5736e5649ef1264bee6e util-linux-2.29.1.tar.xz

View File

@ -4,7 +4,7 @@
# Depends on: eudev-32 readline-32 zlib-32
name=util-linux-32
version=2.29
version=2.29.1
release=1
source=(https://www.kernel.org/pub/linux/utils/util-linux/v${version:0:4}/util-linux-$version.tar.xz)

View File

@ -1 +1 @@
94afc83e553d3c38a153f8f60301fd62 libXi-1.7.8.tar.bz2
1f0f2719c020655a60aee334ddd26d67 libXi-1.7.9.tar.bz2

View File

@ -4,7 +4,7 @@
# Depends on: xorg-xproto-32 xorg-libx11-32 xorg-xextproto-32 xorg-libxext-32 xorg-inputproto xorg-libxi xorg-libxfixes-32
name=xorg-libxi-32
version=1.7.8
version=1.7.9
release=1
source=(http://xorg.freedesktop.org/releases/individual/lib/libXi-$version.tar.bz2)

View File

@ -1,9 +1,9 @@
drwxr-xr-x root/root lib32/
lrwxrwxrwx root/root lib32/libz.so.1 -> libz.so.1.2.10
-rwxr-xr-x root/root lib32/libz.so.1.2.10
lrwxrwxrwx root/root lib32/libz.so.1 -> libz.so.1.2.11
-rwxr-xr-x root/root lib32/libz.so.1.2.11
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/lib32/
-rw-r--r-- root/root usr/lib32/libz.a
lrwxrwxrwx root/root usr/lib32/libz.so -> ../../lib32/libz.so.1.2.10
lrwxrwxrwx root/root usr/lib32/libz.so -> ../../lib32/libz.so.1.2.11
drwxr-xr-x root/root usr/lib32/pkgconfig/
-rw-r--r-- root/root usr/lib32/pkgconfig/zlib.pc

View File

@ -1 +1 @@
d9794246f853d15ce0fcbf79b9a3cf13 zlib-1.2.10.tar.gz
1c9f62f0778697a09d36121ead88e08e zlib-1.2.11.tar.gz

View File

@ -3,7 +3,7 @@
# Maintainer: CRUX compat-32 Team, compat-32-ports at crux dot nu
name=zlib-32
version=1.2.10
version=1.2.11
release=1
source=(http://www.zlib.net/zlib-$version.tar.gz)