[arch-commits] Commit in embree/repos/community-x86_64 (3 files)
Bruno Pagani
archange at archlinux.org
Fri Mar 9 13:55:54 UTC 2018
Date: Friday, March 9, 2018 @ 13:55:53
Author: archange
Revision: 305275
archrelease: copy trunk to community-x86_64
Added:
embree/repos/community-x86_64/PKGBUILD
(from rev 305274, embree/trunk/PKGBUILD)
embree/repos/community-x86_64/fix-avx512-gcc7.patch
(from rev 305274, embree/trunk/fix-avx512-gcc7.patch)
Deleted:
embree/repos/community-x86_64/PKGBUILD
-----------------------+
PKGBUILD | 79 +++++++++++++++++++++++++-----------------------
fix-avx512-gcc7.patch | 49 +++++++++++++++++++++++++++++
2 files changed, 91 insertions(+), 37 deletions(-)
Deleted: PKGBUILD
===================================================================
--- PKGBUILD 2018-03-09 13:55:37 UTC (rev 305274)
+++ PKGBUILD 2018-03-09 13:55:53 UTC (rev 305275)
@@ -1,37 +0,0 @@
-# $Id$
-# Maintainer: Lukas Jirkovsky <l.jirkovsky at gmail.com>
-# Maintainer: Bruno Pagani <archange at archlinux.org>
-
-pkgname=embree
-pkgver=2.17.3
-pkgrel=1
-pkgdesc="A collection of high-performance ray tracing kernels"
-arch=('x86_64')
-url="https://embree.github.io/"
-license=('Apache')
-depends=('intel-tbb')
-makedepends=('cmake' 'ispc' 'freeglut' 'libxmu' 'openexr')
-provides=('embree-isa')
-replaces=('embree-isa')
-source=("${pkgname}-${pkgver}.tar.gz::https://github.com/embree/embree/archive/v${pkgver}.tar.gz")
-sha256sums=('c7d7172ce6e64a7a405fba97ed9e3e92a9cdd53aba5cfc0d46d4b792e22bc0fe')
-
-build() {
- cd ${pkgname}-${pkgver}
-
- cmake . \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_BUILD_TYPE=Release \
- -DEMBREE_TUTORIALS=OFF \
- -DEMBREE_MAX_ISA="AVX2"
- # Embree detects actual ISA at runtime
- # AVX512KNL/SKX: https://github.com/embree/embree/issues/169
- make
-}
-
-package() {
- cd ${pkgname}-${pkgver}
- make DESTDIR="${pkgdir}" install
-}
-
Copied: embree/repos/community-x86_64/PKGBUILD (from rev 305274, embree/trunk/PKGBUILD)
===================================================================
--- PKGBUILD (rev 0)
+++ PKGBUILD 2018-03-09 13:55:53 UTC (rev 305275)
@@ -0,0 +1,42 @@
+# $Id$
+# Maintainer: Lukas Jirkovsky <l.jirkovsky at gmail.com>
+# Maintainer: Bruno Pagani <archange at archlinux.org>
+
+pkgname=embree
+pkgver=2.17.3
+pkgrel=2
+pkgdesc="A collection of high-performance ray tracing kernels"
+arch=('x86_64')
+url="https://embree.github.io/"
+license=('Apache')
+depends=('intel-tbb')
+makedepends=('cmake' 'ispc' 'freeglut' 'libxmu' 'openexr')
+provides=('embree-isa')
+replaces=('embree-isa')
+source=("${pkgname}-${pkgver}.tar.gz::https://github.com/embree/embree/archive/v${pkgver}.tar.gz"
+ 'fix-avx512-gcc7.patch')
+sha256sums=('c7d7172ce6e64a7a405fba97ed9e3e92a9cdd53aba5cfc0d46d4b792e22bc0fe'
+ '0982f55ccf3e5001a16c717b195689b291daf6769bce5b059e2499e098012117')
+
+prepare() {
+ cd ${pkgname}-${pkgver}
+ patch -p1 -i ../fix-avx512-gcc7.patch
+}
+
+build() {
+ cd ${pkgname}-${pkgver}
+ cmake . \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DEMBREE_TUTORIALS=OFF \
+ -DEMBREE_MAX_ISA="AVX512SKX"
+ # Embree detects actual ISA at runtime
+ make
+}
+
+package() {
+ cd ${pkgname}-${pkgver}
+ make DESTDIR="${pkgdir}" install
+}
+
Copied: embree/repos/community-x86_64/fix-avx512-gcc7.patch (from rev 305274, embree/trunk/fix-avx512-gcc7.patch)
===================================================================
--- fix-avx512-gcc7.patch (rev 0)
+++ fix-avx512-gcc7.patch 2018-03-09 13:55:53 UTC (rev 305275)
@@ -0,0 +1,49 @@
+From 40b9aca2668f443cae6bfbfa7cc5a354f1087011 Mon Sep 17 00:00:00 2001
+From: Sven Woop <sven.woop at intel.com>
+Date: Wed, 7 Mar 2018 11:02:01 +0000
+Subject: [PATCH] AVX512 compile fix for GCC 7
+
+---
+ common/simd/vfloat16_avx512.h | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/common/simd/vfloat16_avx512.h b/common/simd/vfloat16_avx512.h
+index 9b7dccf714..306de62dfc 100644
+--- a/common/simd/vfloat16_avx512.h
++++ b/common/simd/vfloat16_avx512.h
+@@ -458,29 +458,29 @@ namespace embree
+ }
+
+ __forceinline vfloat16 interleave_even(const vfloat16& a, const vfloat16& b) {
+- return _mm512_castsi512_ps(_mm512_mask_shuffle_epi32(_mm512_castps_si512(a), mm512_int2mask(0xaaaa), _mm512_castps_si512(b), 0xb1));
++ return _mm512_castsi512_ps(_mm512_mask_shuffle_epi32(_mm512_castps_si512(a), mm512_int2mask(0xaaaa), _mm512_castps_si512(b), (_MM_PERM_ENUM)0xb1));
+ }
+
+ __forceinline vfloat16 interleave_odd(const vfloat16& a, const vfloat16& b) {
+- return _mm512_castsi512_ps(_mm512_mask_shuffle_epi32(_mm512_castps_si512(b), mm512_int2mask(0x5555), _mm512_castps_si512(a), 0xb1));
++ return _mm512_castsi512_ps(_mm512_mask_shuffle_epi32(_mm512_castps_si512(b), mm512_int2mask(0x5555), _mm512_castps_si512(a), (_MM_PERM_ENUM)0xb1));
+ }
+
+ __forceinline vfloat16 interleave2_even(const vfloat16& a, const vfloat16& b) {
+ /* mask should be 8-bit but is 16-bit to reuse for interleave_even */
+- return _mm512_castsi512_ps(_mm512_mask_permutex_epi64(_mm512_castps_si512(a), mm512_int2mask(0xaaaa), _mm512_castps_si512(b), 0xb1));
++ return _mm512_castsi512_ps(_mm512_mask_permutex_epi64(_mm512_castps_si512(a), mm512_int2mask(0xaaaa), _mm512_castps_si512(b), (_MM_PERM_ENUM)0xb1));
+ }
+
+ __forceinline vfloat16 interleave2_odd(const vfloat16& a, const vfloat16& b) {
+ /* mask should be 8-bit but is 16-bit to reuse for interleave_odd */
+- return _mm512_castsi512_ps(_mm512_mask_permutex_epi64(_mm512_castps_si512(b), mm512_int2mask(0x5555), _mm512_castps_si512(a), 0xb1));
++ return _mm512_castsi512_ps(_mm512_mask_permutex_epi64(_mm512_castps_si512(b), mm512_int2mask(0x5555), _mm512_castps_si512(a), (_MM_PERM_ENUM)0xb1));
+ }
+
+ __forceinline vfloat16 interleave4_even(const vfloat16& a, const vfloat16& b) {
+- return _mm512_castsi512_ps(_mm512_mask_permutex_epi64(_mm512_castps_si512(a), mm512_int2mask(0xcc), _mm512_castps_si512(b), 0x4e));
++ return _mm512_castsi512_ps(_mm512_mask_permutex_epi64(_mm512_castps_si512(a), mm512_int2mask(0xcc), _mm512_castps_si512(b), (_MM_PERM_ENUM)0x4e));
+ }
+
+ __forceinline vfloat16 interleave4_odd(const vfloat16& a, const vfloat16& b) {
+- return _mm512_castsi512_ps(_mm512_mask_permutex_epi64(_mm512_castps_si512(b), mm512_int2mask(0x33), _mm512_castps_si512(a), 0x4e));
++ return _mm512_castsi512_ps(_mm512_mask_permutex_epi64(_mm512_castps_si512(b), mm512_int2mask(0x33), _mm512_castps_si512(a), (_MM_PERM_ENUM)0x4e));
+ }
+
+ __forceinline vfloat16 permute(vfloat16 v, __m512i index) {
More information about the arch-commits
mailing list