Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Nov 2017 17:41:33 +0000 (UTC)
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org
Subject:   svn commit: r454977 - in branches/2017Q4: mail/thunderbird mail/thunderbird/files www/firefox www/firefox-esr www/firefox-esr/files www/firefox/files www/seamonkey www/seamonkey/files
Message-ID:  <201711271741.vARHfXCU069375@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Mon Nov 27 17:41:33 2017
New Revision: 454977
URL: https://svnweb.freebsd.org/changeset/ports/454977

Log:
  MFH: r453437 r453446 r453721
  
  gecko: speed up HTML5 video scaling on i386
  
  Approved by:	ports-secteam (feld)

Added:
  branches/2017Q4/mail/thunderbird/files/patch-bug1414440
     - copied, changed from r453437, head/mail/thunderbird/files/patch-bug1414440
  branches/2017Q4/www/firefox-esr/files/patch-bug1414440
     - copied, changed from r453437, head/www/firefox-esr/files/patch-bug1414440
  branches/2017Q4/www/firefox/files/patch-bug1414440
     - copied, changed from r453437, head/www/firefox/files/patch-bug1414440
  branches/2017Q4/www/seamonkey/files/patch-bug1414440
     - copied, changed from r453437, head/www/seamonkey/files/patch-bug1414440
Modified:
  branches/2017Q4/mail/thunderbird/Makefile
  branches/2017Q4/www/firefox-esr/Makefile
  branches/2017Q4/www/firefox/Makefile
  branches/2017Q4/www/seamonkey/Makefile
Directory Properties:
  branches/2017Q4/   (props changed)

Modified: branches/2017Q4/mail/thunderbird/Makefile
==============================================================================
--- branches/2017Q4/mail/thunderbird/Makefile	Mon Nov 27 17:36:39 2017	(r454976)
+++ branches/2017Q4/mail/thunderbird/Makefile	Mon Nov 27 17:41:33 2017	(r454977)
@@ -3,7 +3,7 @@
 
 PORTNAME=	thunderbird
 DISTVERSION=	52.4.0
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	mail news net-im ipv6
 MASTER_SITES=	MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
 		MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build3/source

Copied and modified: branches/2017Q4/mail/thunderbird/files/patch-bug1414440 (from r453437, head/mail/thunderbird/files/patch-bug1414440)
==============================================================================
--- head/mail/thunderbird/files/patch-bug1414440	Fri Nov  3 23:58:45 2017	(r453437, copy source)
+++ branches/2017Q4/mail/thunderbird/files/patch-bug1414440	Mon Nov 27 17:41:33 2017	(r454977)
@@ -1,72 +1,77 @@
-Build libyuv with SIMD optimizations on Linux x86.
+Always build libyuv x86 optimizations with Clang.
 
 diff --git media/libyuv/include/libyuv/compare_row.h media/libyuv/include/libyuv/compare_row.h
-index 7abc2d4aef8f..161c12fa1b83 100644
+index 38a957b2ce33..59ec4b30c238 100644
 --- mozilla/media/libyuv/include/libyuv/compare_row.h
 +++ mozilla/media/libyuv/include/libyuv/compare_row.h
-@@ -18,8 +18,7 @@ namespace libyuv {
- extern "C" {
+@@ -19,7 +19,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/planar_functions.h media/libyuv/include/libyuv/planar_functions.h
-index 040839c211b1..0d672dec96d6 100644
+index 881b0c5c6473..491c022bfe8f 100644
 --- mozilla/media/libyuv/include/libyuv/planar_functions.h
 +++ mozilla/media/libyuv/include/libyuv/planar_functions.h
-@@ -719,8 +719,7 @@ int I420Interpolate(const uint8* src0_y,
-                     int height,
-                     int interpolation);
+@@ -450,7 +450,7 @@ int I420Interpolate(const uint8* src0_y, int src0_stride_y,
+                     int width, int height, int interpolation);
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/rotate_row.h media/libyuv/include/libyuv/rotate_row.h
-index 2c51584eee8b..73bbe8ef7ad4 100644
+index ebc487f9abf4..59fbd10b573c 100644
 --- mozilla/media/libyuv/include/libyuv/rotate_row.h
 +++ mozilla/media/libyuv/include/libyuv/rotate_row.h
-@@ -18,8 +18,7 @@ namespace libyuv {
- extern "C" {
+@@ -19,7 +19,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/row.h media/libyuv/include/libyuv/row.h
-index f74bd9f7d17a..3bdfb75fc160 100644
+index 069d73bd3f2e..3616ecd81c3d 100644
 --- mozilla/media/libyuv/include/libyuv/row.h
 +++ mozilla/media/libyuv/include/libyuv/row.h
-@@ -30,8 +30,7 @@ extern "C" {
-   free(var##_mem);                  \
+@@ -38,7 +38,7 @@ extern "C" {
    var = 0
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/scale_row.h media/libyuv/include/libyuv/scale_row.h
-index edb46cc8c647..fe78a80f81bd 100644
+index df699e6c2282..242f025b1e6e 100644
 --- mozilla/media/libyuv/include/libyuv/scale_row.h
 +++ mozilla/media/libyuv/include/libyuv/scale_row.h
-@@ -19,8 +19,7 @@ namespace libyuv {
- extern "C" {
+@@ -20,7 +20,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
+diff --git media/libyuv/linux.mk media/libyuv/linux.mk
+index ee5a3a70705a..c1a45173c9ab 100644
+--- mozilla/media/libyuv/linux.mk
++++ mozilla/media/libyuv/linux.mk
+@@ -78,4 +78,4 @@ cpuid: util/cpuid.c libyuv.a
+ 	$(CC) $(CFLAGS) -o $@ util/cpuid.c libyuv.a
+ 
+ clean:
+-	/bin/rm -f source/*.o *.ii *.s libyuv.a convert cpuid psnr
++	/bin/rm -f source/*.o *.ii *.s libyuv.a yuvconvert cpuid psnr

Modified: branches/2017Q4/www/firefox-esr/Makefile
==============================================================================
--- branches/2017Q4/www/firefox-esr/Makefile	Mon Nov 27 17:36:39 2017	(r454976)
+++ branches/2017Q4/www/firefox-esr/Makefile	Mon Nov 27 17:41:33 2017	(r454977)
@@ -4,7 +4,7 @@
 PORTNAME=	firefox
 DISTVERSION=	52.4.1
 DISTVERSIONSUFFIX=esr.source
-PORTREVISION=	2
+PORTREVISION=	3
 PORTEPOCH=	1
 CATEGORIES=	www ipv6
 MASTER_SITES=	MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \

Copied and modified: branches/2017Q4/www/firefox-esr/files/patch-bug1414440 (from r453437, head/www/firefox-esr/files/patch-bug1414440)
==============================================================================
--- head/www/firefox-esr/files/patch-bug1414440	Fri Nov  3 23:58:45 2017	(r453437, copy source)
+++ branches/2017Q4/www/firefox-esr/files/patch-bug1414440	Mon Nov 27 17:41:33 2017	(r454977)
@@ -1,72 +1,77 @@
-Build libyuv with SIMD optimizations on Linux x86.
+Always build libyuv x86 optimizations with Clang.
 
 diff --git media/libyuv/include/libyuv/compare_row.h media/libyuv/include/libyuv/compare_row.h
-index 7abc2d4aef8f..161c12fa1b83 100644
+index 38a957b2ce33..59ec4b30c238 100644
 --- media/libyuv/include/libyuv/compare_row.h
 +++ media/libyuv/include/libyuv/compare_row.h
-@@ -18,8 +18,7 @@ namespace libyuv {
- extern "C" {
+@@ -19,7 +19,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/planar_functions.h media/libyuv/include/libyuv/planar_functions.h
-index 040839c211b1..0d672dec96d6 100644
+index 881b0c5c6473..491c022bfe8f 100644
 --- media/libyuv/include/libyuv/planar_functions.h
 +++ media/libyuv/include/libyuv/planar_functions.h
-@@ -719,8 +719,7 @@ int I420Interpolate(const uint8* src0_y,
-                     int height,
-                     int interpolation);
+@@ -450,7 +450,7 @@ int I420Interpolate(const uint8* src0_y, int src0_stride_y,
+                     int width, int height, int interpolation);
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/rotate_row.h media/libyuv/include/libyuv/rotate_row.h
-index 2c51584eee8b..73bbe8ef7ad4 100644
+index ebc487f9abf4..59fbd10b573c 100644
 --- media/libyuv/include/libyuv/rotate_row.h
 +++ media/libyuv/include/libyuv/rotate_row.h
-@@ -18,8 +18,7 @@ namespace libyuv {
- extern "C" {
+@@ -19,7 +19,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/row.h media/libyuv/include/libyuv/row.h
-index f74bd9f7d17a..3bdfb75fc160 100644
+index 069d73bd3f2e..3616ecd81c3d 100644
 --- media/libyuv/include/libyuv/row.h
 +++ media/libyuv/include/libyuv/row.h
-@@ -30,8 +30,7 @@ extern "C" {
-   free(var##_mem);                  \
+@@ -38,7 +38,7 @@ extern "C" {
    var = 0
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/scale_row.h media/libyuv/include/libyuv/scale_row.h
-index edb46cc8c647..fe78a80f81bd 100644
+index df699e6c2282..242f025b1e6e 100644
 --- media/libyuv/include/libyuv/scale_row.h
 +++ media/libyuv/include/libyuv/scale_row.h
-@@ -19,8 +19,7 @@ namespace libyuv {
- extern "C" {
+@@ -20,7 +20,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
+diff --git media/libyuv/linux.mk media/libyuv/linux.mk
+index ee5a3a70705a..c1a45173c9ab 100644
+--- media/libyuv/linux.mk
++++ media/libyuv/linux.mk
+@@ -78,4 +78,4 @@ cpuid: util/cpuid.c libyuv.a
+ 	$(CC) $(CFLAGS) -o $@ util/cpuid.c libyuv.a
+ 
+ clean:
+-	/bin/rm -f source/*.o *.ii *.s libyuv.a convert cpuid psnr
++	/bin/rm -f source/*.o *.ii *.s libyuv.a yuvconvert cpuid psnr

Modified: branches/2017Q4/www/firefox/Makefile
==============================================================================
--- branches/2017Q4/www/firefox/Makefile	Mon Nov 27 17:36:39 2017	(r454976)
+++ branches/2017Q4/www/firefox/Makefile	Mon Nov 27 17:41:33 2017	(r454977)
@@ -4,7 +4,7 @@
 PORTNAME=	firefox
 DISTVERSION=	56.0.2
 DISTVERSIONSUFFIX=.source
-PORTREVISION=	5
+PORTREVISION=	6
 PORTEPOCH=	1
 CATEGORIES=	www ipv6
 MASTER_SITES=	MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \

Copied and modified: branches/2017Q4/www/firefox/files/patch-bug1414440 (from r453437, head/www/firefox/files/patch-bug1414440)
==============================================================================
--- head/www/firefox/files/patch-bug1414440	Fri Nov  3 23:58:45 2017	(r453437, copy source)
+++ branches/2017Q4/www/firefox/files/patch-bug1414440	Mon Nov 27 17:41:33 2017	(r454977)
@@ -1,94 +1,108 @@
-Build libyuv with SIMD optimizations on Linux x86.
+Always build libyuv x86 optimizations with Clang.
 
 diff --git media/libyuv/libyuv/include/libyuv/compare_row.h media/libyuv/libyuv/include/libyuv/compare_row.h
-index 7abc2d4aef8f..161c12fa1b83 100644
+index 7abc2d4aef8f..542df1ef504b 100644
 --- media/libyuv/libyuv/include/libyuv/compare_row.h
 +++ media/libyuv/libyuv/include/libyuv/compare_row.h
-@@ -18,8 +18,7 @@ namespace libyuv {
- extern "C" {
+@@ -19,7 +19,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/libyuv/include/libyuv/planar_functions.h media/libyuv/libyuv/include/libyuv/planar_functions.h
-index 040839c211b1..0d672dec96d6 100644
+index 040839c211b1..5f6a8034d209 100644
 --- media/libyuv/libyuv/include/libyuv/planar_functions.h
 +++ media/libyuv/libyuv/include/libyuv/planar_functions.h
-@@ -719,8 +719,7 @@ int I420Interpolate(const uint8* src0_y,
-                     int height,
+@@ -720,7 +720,7 @@ int I420Interpolate(const uint8* src0_y,
                      int interpolation);
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/libyuv/include/libyuv/rotate_row.h media/libyuv/libyuv/include/libyuv/rotate_row.h
-index 2c51584eee8b..73bbe8ef7ad4 100644
+index 2c51584eee8b..8e60a713c4cf 100644
 --- media/libyuv/libyuv/include/libyuv/rotate_row.h
 +++ media/libyuv/libyuv/include/libyuv/rotate_row.h
-@@ -18,8 +18,7 @@ namespace libyuv {
- extern "C" {
+@@ -19,7 +19,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/libyuv/include/libyuv/row.h media/libyuv/libyuv/include/libyuv/row.h
-index f74bd9f7d17a..3bdfb75fc160 100644
+index f74bd9f7d17a..b8f674ba124d 100644
 --- media/libyuv/libyuv/include/libyuv/row.h
 +++ media/libyuv/libyuv/include/libyuv/row.h
-@@ -30,8 +30,7 @@ extern "C" {
-   free(var##_mem);                  \
+@@ -31,7 +31,7 @@ extern "C" {
    var = 0
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
-@@ -103,7 +102,10 @@ extern "C" {
- #define HAS_COPYROW_ERMS
- #define HAS_COPYROW_SSE2
- #define HAS_H422TOARGBROW_SSSE3
-+#ifdef __SSE2__
-+// source/row_gcc.cc:5457:5: error: couldn't allocate input reg for constraint 'x'
- #define HAS_HALFFLOATROW_SSE2
-+#endif
- #define HAS_I400TOARGBROW_SSE2
- #define HAS_I422TOARGB1555ROW_SSSE3
- #define HAS_I422TOARGB4444ROW_SSSE3
-@@ -202,7 +204,10 @@ extern "C" {
- #define HAS_ARGBTOYROW_AVX2
- #define HAS_COPYROW_AVX
- #define HAS_H422TOARGBROW_AVX2
-+#ifdef __SSE2__
-+// source/row_gcc.cc:5492:5: error: couldn't allocate input reg for constraint 'x'
- #define HAS_HALFFLOATROW_AVX2
-+#endif
- //  #define HAS_HALFFLOATROW_F16C  // Enable to test halffloat cast
- #define HAS_I400TOARGBROW_AVX2
- #define HAS_I422TOARGB1555ROW_AVX2
 diff --git media/libyuv/libyuv/include/libyuv/scale_row.h media/libyuv/libyuv/include/libyuv/scale_row.h
-index edb46cc8c647..fe78a80f81bd 100644
+index edb46cc8c647..2b2c7a0700ef 100644
 --- media/libyuv/libyuv/include/libyuv/scale_row.h
 +++ media/libyuv/libyuv/include/libyuv/scale_row.h
-@@ -19,8 +19,7 @@ namespace libyuv {
- extern "C" {
+@@ -20,7 +20,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
+diff --git media/libyuv/libyuv/linux.mk media/libyuv/libyuv/linux.mk
+index 923345ae4d12..9e555e303913 100644
+--- media/libyuv/libyuv/linux.mk
++++ media/libyuv/libyuv/linux.mk
+@@ -80,4 +80,4 @@ cpuid: util/cpuid.c libyuv.a
+ 	$(CC) $(CFLAGS) -o $@ util/cpuid.c libyuv.a
+ 
+ clean:
+-	/bin/rm -f source/*.o *.ii *.s libyuv.a convert cpuid psnr
++	/bin/rm -f source/*.o *.ii *.s libyuv.a yuvconvert cpuid psnr
+diff --git media/libyuv/libyuv/source/row_gcc.cc media/libyuv/libyuv/source/row_gcc.cc
+index 8735070b619d..9df8c6a627db 100644
+--- media/libyuv/libyuv/source/row_gcc.cc
++++ media/libyuv/libyuv/source/row_gcc.cc
+@@ -5479,7 +5479,7 @@ void HalfFloatRow_SSE2(const uint16* src, uint16* dst, float scale, int width) {
+   : "+r"(src),    // %0
+     "+r"(dst),    // %1
+     "+r"(width)   // %2
+-  : "x"(scale * kScaleBias)   // %3
++  : "mx"(scale * kScaleBias)   // %3
+   : "memory", "cc",
+     "xmm2", "xmm3", "xmm4", "xmm5"
+   );
+@@ -5515,7 +5515,7 @@ void HalfFloatRow_AVX2(const uint16* src, uint16* dst, float scale, int width) {
+   : "+r"(src),    // %0
+     "+r"(dst),    // %1
+     "+r"(width)   // %2
+-  : "x"(scale * kScaleBias)   // %3
++  : "mx"(scale * kScaleBias)   // %3
+   : "memory", "cc",
+     "xmm2", "xmm3", "xmm4", "xmm5"
+   );
+@@ -5548,7 +5548,7 @@ void HalfFloatRow_F16C(const uint16* src, uint16* dst, float scale, int width) {
+   : "+r"(src),   // %0
+     "+r"(dst),   // %1
+     "+r"(width)  // %2
+-  : "x"(scale)   // %3
++  : "mx"(scale)  // %3
+   : "memory", "cc",
+     "xmm2", "xmm3", "xmm4"
+   );

Modified: branches/2017Q4/www/seamonkey/Makefile
==============================================================================
--- branches/2017Q4/www/seamonkey/Makefile	Mon Nov 27 17:36:39 2017	(r454976)
+++ branches/2017Q4/www/seamonkey/Makefile	Mon Nov 27 17:41:33 2017	(r454977)
@@ -3,7 +3,7 @@
 
 PORTNAME=	seamonkey
 DISTVERSION=	2.49.1
-PORTREVISION=	2
+PORTREVISION=	3
 MOZILLA_VER=	52 # above + 3
 CATEGORIES?=	www mail news editors irc ipv6
 MASTER_SITES=	MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \

Copied and modified: branches/2017Q4/www/seamonkey/files/patch-bug1414440 (from r453437, head/www/seamonkey/files/patch-bug1414440)
==============================================================================
--- head/www/seamonkey/files/patch-bug1414440	Fri Nov  3 23:58:45 2017	(r453437, copy source)
+++ branches/2017Q4/www/seamonkey/files/patch-bug1414440	Mon Nov 27 17:41:33 2017	(r454977)
@@ -1,72 +1,77 @@
-Build libyuv with SIMD optimizations on Linux x86.
+Always build libyuv x86 optimizations with Clang.
 
 diff --git media/libyuv/include/libyuv/compare_row.h media/libyuv/include/libyuv/compare_row.h
-index 7abc2d4aef8f..161c12fa1b83 100644
+index 38a957b2ce33..59ec4b30c238 100644
 --- mozilla/media/libyuv/include/libyuv/compare_row.h
 +++ mozilla/media/libyuv/include/libyuv/compare_row.h
-@@ -18,8 +18,7 @@ namespace libyuv {
- extern "C" {
+@@ -19,7 +19,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/planar_functions.h media/libyuv/include/libyuv/planar_functions.h
-index 040839c211b1..0d672dec96d6 100644
+index 881b0c5c6473..491c022bfe8f 100644
 --- mozilla/media/libyuv/include/libyuv/planar_functions.h
 +++ mozilla/media/libyuv/include/libyuv/planar_functions.h
-@@ -719,8 +719,7 @@ int I420Interpolate(const uint8* src0_y,
-                     int height,
-                     int interpolation);
+@@ -450,7 +450,7 @@ int I420Interpolate(const uint8* src0_y, int src0_stride_y,
+                     int width, int height, int interpolation);
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/rotate_row.h media/libyuv/include/libyuv/rotate_row.h
-index 2c51584eee8b..73bbe8ef7ad4 100644
+index ebc487f9abf4..59fbd10b573c 100644
 --- mozilla/media/libyuv/include/libyuv/rotate_row.h
 +++ mozilla/media/libyuv/include/libyuv/rotate_row.h
-@@ -18,8 +18,7 @@ namespace libyuv {
- extern "C" {
+@@ -19,7 +19,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/row.h media/libyuv/include/libyuv/row.h
-index f74bd9f7d17a..3bdfb75fc160 100644
+index 069d73bd3f2e..3616ecd81c3d 100644
 --- mozilla/media/libyuv/include/libyuv/row.h
 +++ mozilla/media/libyuv/include/libyuv/row.h
-@@ -30,8 +30,7 @@ extern "C" {
-   free(var##_mem);                  \
+@@ -38,7 +38,7 @@ extern "C" {
    var = 0
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
 diff --git media/libyuv/include/libyuv/scale_row.h media/libyuv/include/libyuv/scale_row.h
-index edb46cc8c647..fe78a80f81bd 100644
+index df699e6c2282..242f025b1e6e 100644
 --- mozilla/media/libyuv/include/libyuv/scale_row.h
 +++ mozilla/media/libyuv/include/libyuv/scale_row.h
-@@ -19,8 +19,7 @@ namespace libyuv {
- extern "C" {
+@@ -20,7 +20,7 @@ extern "C" {
  #endif
  
--#if defined(__pnacl__) || defined(__CLR_VER) || \
+ #if defined(__pnacl__) || defined(__CLR_VER) || \
 -    (defined(__i386__) && !defined(__SSE2__))
-+#if defined(__pnacl__) || defined(__CLR_VER)
++    (defined(__i386__) && !defined(__SSE__) && !defined(__clang__))
  #define LIBYUV_DISABLE_X86
  #endif
  // MemorySanitizer does not support assembly code yet. http://crbug.com/344505
+diff --git media/libyuv/linux.mk media/libyuv/linux.mk
+index ee5a3a70705a..c1a45173c9ab 100644
+--- mozilla/media/libyuv/linux.mk
++++ mozilla/media/libyuv/linux.mk
+@@ -78,4 +78,4 @@ cpuid: util/cpuid.c libyuv.a
+ 	$(CC) $(CFLAGS) -o $@ util/cpuid.c libyuv.a
+ 
+ clean:
+-	/bin/rm -f source/*.o *.ii *.s libyuv.a convert cpuid psnr
++	/bin/rm -f source/*.o *.ii *.s libyuv.a yuvconvert cpuid psnr



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201711271741.vARHfXCU069375>