- fix build of www/firefox, www/seamonkey and mail/thunderbird on stable/7 after

r219639 which MFC'd SSSE3 instruction set to gcc but not to gas. Configure
  picks up SSSE3 support in gcc but linking fails with

{standard input}:283: Error: no such instruction: `pmaddubsw %xmm2,%xmm3'
{standard input}:400: Error: no such instruction: `pmaddubsw %xmm0,%xmm1'
{standard input}:544: Error: no such instruction: `pmaddubsw %xmm0,%xmm1'

PR:		ports/171255
Submitted by:	naddy, Jan Beich <jbeich@tormail.org>
This commit is contained in:
Florian Smeets 2012-09-03 21:16:00 +00:00
parent 0b6867c17e
commit 493b4b7a8a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=303621
3 changed files with 108 additions and 0 deletions

View file

@ -0,0 +1,36 @@
# Bug 786995 - configure should check for SSSE3 support in the whole toolchain
--- mozilla/configure.in.orig 2012-09-02 00:37:29.000000000 +0200
+++ mozilla/configure.in 2012-09-02 00:38:50.000000000 +0200
@@ -1710,15 +1710,15 @@
_MOZ_RTTI_FLAGS_OFF=-fno-rtti
# Check for -mssse3 on $CC
- AC_MSG_CHECKING([for -mssse3 option to $CC])
- HAVE_COMPILER_FLAG_MSSSE3=
+ AC_MSG_CHECKING([if toolchain supports -mssse3 option])
+ HAVE_TOOLCHAIN_SUPPORT_MSSSE3=
_SAVE_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS -mssse3"
- AC_TRY_COMPILE(,,AC_MSG_RESULT([yes])
- [HAVE_COMPILER_FLAG_MSSSE3=1],
+ AC_TRY_COMPILE([asm ("pmaddubsw %xmm2,%xmm3");],,AC_MSG_RESULT([yes])
+ [HAVE_TOOLCHAIN_SUPPORT_MSSSE3=1],
AC_MSG_RESULT([no]))
CFLAGS=$_SAVE_CFLAGS
- AC_SUBST(HAVE_COMPILER_FLAG_MSSSE3)
+ AC_SUBST(HAVE_TOOLCHAIN_SUPPORT_MSSSE3)
# Turn on GNU-specific warnings:
# -Wall - turn on a lot of warnings
--- mozilla/gfx/skia/Makefile.in.orig 2012-09-02 00:39:00.000000000 +0200
+++ mozilla/gfx/skia/Makefile.in 2012-09-02 00:39:21.000000000 +0200
@@ -365,7 +365,7 @@
SkUtils_opts_SSE2.cpp \
opts_check_SSE2.cpp \
$(NULL)
-ifdef HAVE_COMPILER_FLAG_MSSSE3
+ifdef HAVE_TOOLCHAIN_SUPPORT_MSSSE3
DEFINES += -DSK_BUILD_SSSE3
CPPSRCS += SkBitmapProcState_opts_SSSE3.cpp
endif

View file

@ -0,0 +1,36 @@
# Bug 786995 - configure should check for SSSE3 support in the whole toolchain
--- configure.in.orig 2012-09-02 00:37:29.000000000 +0200
+++ configure.in 2012-09-02 00:38:50.000000000 +0200
@@ -1710,15 +1710,15 @@
_MOZ_RTTI_FLAGS_OFF=-fno-rtti
# Check for -mssse3 on $CC
- AC_MSG_CHECKING([for -mssse3 option to $CC])
- HAVE_COMPILER_FLAG_MSSSE3=
+ AC_MSG_CHECKING([if toolchain supports -mssse3 option])
+ HAVE_TOOLCHAIN_SUPPORT_MSSSE3=
_SAVE_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS -mssse3"
- AC_TRY_COMPILE(,,AC_MSG_RESULT([yes])
- [HAVE_COMPILER_FLAG_MSSSE3=1],
+ AC_TRY_COMPILE([asm ("pmaddubsw %xmm2,%xmm3");],,AC_MSG_RESULT([yes])
+ [HAVE_TOOLCHAIN_SUPPORT_MSSSE3=1],
AC_MSG_RESULT([no]))
CFLAGS=$_SAVE_CFLAGS
- AC_SUBST(HAVE_COMPILER_FLAG_MSSSE3)
+ AC_SUBST(HAVE_TOOLCHAIN_SUPPORT_MSSSE3)
# Turn on GNU-specific warnings:
# -Wall - turn on a lot of warnings
--- gfx/skia/Makefile.in.orig 2012-09-02 00:39:00.000000000 +0200
+++ gfx/skia/Makefile.in 2012-09-02 00:39:21.000000000 +0200
@@ -365,7 +365,7 @@
SkUtils_opts_SSE2.cpp \
opts_check_SSE2.cpp \
$(NULL)
-ifdef HAVE_COMPILER_FLAG_MSSSE3
+ifdef HAVE_TOOLCHAIN_SUPPORT_MSSSE3
DEFINES += -DSK_BUILD_SSSE3
CPPSRCS += SkBitmapProcState_opts_SSSE3.cpp
endif

View file

@ -0,0 +1,36 @@
# Bug 786995 - configure should check for SSSE3 support in the whole toolchain
--- mozilla/configure.in.orig 2012-09-02 00:37:29.000000000 +0200
+++ mozilla/configure.in 2012-09-02 00:38:50.000000000 +0200
@@ -1710,15 +1710,15 @@
_MOZ_RTTI_FLAGS_OFF=-fno-rtti
# Check for -mssse3 on $CC
- AC_MSG_CHECKING([for -mssse3 option to $CC])
- HAVE_COMPILER_FLAG_MSSSE3=
+ AC_MSG_CHECKING([if toolchain supports -mssse3 option])
+ HAVE_TOOLCHAIN_SUPPORT_MSSSE3=
_SAVE_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS -mssse3"
- AC_TRY_COMPILE(,,AC_MSG_RESULT([yes])
- [HAVE_COMPILER_FLAG_MSSSE3=1],
+ AC_TRY_COMPILE([asm ("pmaddubsw %xmm2,%xmm3");],,AC_MSG_RESULT([yes])
+ [HAVE_TOOLCHAIN_SUPPORT_MSSSE3=1],
AC_MSG_RESULT([no]))
CFLAGS=$_SAVE_CFLAGS
- AC_SUBST(HAVE_COMPILER_FLAG_MSSSE3)
+ AC_SUBST(HAVE_TOOLCHAIN_SUPPORT_MSSSE3)
# Turn on GNU-specific warnings:
# -Wall - turn on a lot of warnings
--- mozilla/gfx/skia/Makefile.in.orig 2012-09-02 00:39:00.000000000 +0200
+++ mozilla/gfx/skia/Makefile.in 2012-09-02 00:39:21.000000000 +0200
@@ -365,7 +365,7 @@
SkUtils_opts_SSE2.cpp \
opts_check_SSE2.cpp \
$(NULL)
-ifdef HAVE_COMPILER_FLAG_MSSSE3
+ifdef HAVE_TOOLCHAIN_SUPPORT_MSSSE3
DEFINES += -DSK_BUILD_SSSE3
CPPSRCS += SkBitmapProcState_opts_SSSE3.cpp
endif