From owner-freebsd-ports@freebsd.org Tue May 9 03:56:18 2017 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A1BC0D65530 for ; Tue, 9 May 2017 03:56:18 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 58A20198F for ; Tue, 9 May 2017 03:56:18 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id 52BFCD6552E; Tue, 9 May 2017 03:56:18 +0000 (UTC) Delivered-To: ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 51F00D6552D; Tue, 9 May 2017 03:56:18 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C36461982; Tue, 9 May 2017 03:56:17 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1354) id F0DEA73C4; Tue, 9 May 2017 03:55:30 +0000 (UTC) From: Jan Beich To: Michal Meloun Cc: freebsd-arm@freebsd.org, ports@freebsd.org Subject: Re: www/firefox, Error: garbage following instruction...was: Re: RPI2, www/firefox, error: "NEON support not enabled" References: <20170505151339.GA51255@www.zefox.net> <962F9C0D-C7C8-4940-A381-B3097FD2A138@dsl-only.net> <20170505182838.GB51255@www.zefox.net> <078B736E-4807-42C7-B6A5-656F3A50DAEB@dsl-only.net> <20170505230106.GA52464@www.zefox.net> <20170506050140.GA54543@www.zefox.net> <20170508033331.GA61772@www.zefox.net> <80D06D70-8534-456C-A66F-CDD4CE0D5811@FreeBSD.org> <7306a091-1350-d6cb-b329-c56f2d80c0bf@freebsd.org> Date: Tue, 09 May 2017 05:55:17 +0200 In-Reply-To: <7306a091-1350-d6cb-b329-c56f2d80c0bf@freebsd.org> (Michal Meloun's message of "Mon, 8 May 2017 13:08:46 +0200") Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 May 2017 03:56:18 -0000 Michal Meloun writes: > On 08.05.2017 10:56, Dimitry Andric wrote: > >> On 8 May 2017, at 05:33, bob prohaska wrote: >>> >>> On Fri, May 05, 2017 at 10:01:40PM -0700, bob prohaska wrote: >>>> It appears that using >>>> make CFLAGS='-mcpu=cortex-a7' >>>> is sufficient to get past the NEON not enabled error. >>>> >>> >>> The next problem appears to be >>> >>> >>> > /usr/ports/www/firefox/work/firefox-53.0.2/media/openmax_dl/dl/sp/src/armSP_FFT_CToC_FC32_Radix4_ls_unsafe_s.S:335: > Error: garbage following instruction -- `vmov Q7.F32,Q0.F32' >>> cc: error: assembler command failed with exit code 1 (use -v to see > invocation) >>> gmake[6]: *** > [/usr/ports/www/firefox/work/firefox-53.0.2/config/rules.mk:990: > armSP_FFT_CToC_FC32_Radix4_ls_unsafe_s.o] Error 1 >>> gmake[5]: *** > [/usr/ports/www/firefox/work/firefox-53.0.2/config/recurse.mk:71: > media/openmax_dl/dl/target] Error 2 >>> >>> Is this worth a bug report, or is firefox too far over the horizon >>> for freebsd-arm? >>> >>> Thanks for reading, and any guidance. >> >> This is actually an error message from the GNU assembler, which is >> invoked by the compiler driver. Can you figure out whether it is the >> base version (/usr/bin/as) or the ports version (/usr/local/bin/as)? >> E.g. manually run that command line with -v, so see which assembler it >> runs. >> >> Also, I wonder why they don't use the integrated assembler in clang, but >> that is an aspect of the firefox port I'm not familiar with. >> >> -Dimitry >> > It's from base (buggy, outdated) GNU assembler, gas from ports can > compile affected file without problem. > > The integrated clang assembler cannot be used because Mozilla extensive > uses macros in assembly code, and macros are not supported by clang. Upstream commit suggests otherwise. https://android.googlesource.com/platform/external/chromium_org/third_party/openmax_dl/+/5d8507771824%5E%21/ > Moreover, many pieces of assembly files still uses pre-UAL syntax. > > Unfortunately, replacing base as (by the one from port) is not > sufficient - the Mozilla build system doesn't pass external CFLAGS to > assembly files (.S), so build fails again later. Do you mean ASFLAGS are unused, so the following wouldn't help? Index: Mk/bsd.gecko.mk =================================================================== --- Mk/bsd.gecko.mk (revision 440464) +++ Mk/bsd.gecko.mk (working copy) @@ -475,6 +475,10 @@ USE_BINUTILS= # intel-gcm.s CFLAGS+= -B${LOCALBASE}/bin LDFLAGS+= -B${LOCALBASE}/bin . endif +.elif ${ARCH:Marm*} +USE_BINUTILS= # media/openmax_dl/ +MOZ_EXPORT+= ASFLAGS="${ASFLAGS}" +ASFLAGS+= -B${LOCALBASE}/bin .elif ${ARCH:Mpowerpc*} USES:= compiler:gcc-c++11-lib ${USES:Ncompiler*c++11*} . if ${ARCH} == "powerpc64"