[MacPorts] #65153: nss fails to build for x86_64 on 10.6.8 when forcing the build to use gcc11 instead of the default clang compiler: no such instruction: `pclmulqdq $16, %xmm2, %xmm0'

MacPorts noreply at macports.org
Wed May 11 13:44:21 UTC 2022


#65153: nss fails to build for x86_64 on 10.6.8 when forcing the build to use gcc11
instead of the default clang compiler: no such instruction: `pclmulqdq $16,
%xmm2,%xmm0'
-------------------------+-------------------------------------------------
  Reporter:              |      Owner:  (none)
  barracuda156           |
      Type:  defect      |     Status:  new
  Priority:  Normal      |  Milestone:
 Component:  ports       |    Version:  2.7.2
Resolution:              |   Keywords:  x86_64, snowleopard,
      Port:  nss         |  nonstandard_build
-------------------------+-------------------------------------------------

Comment (by barracuda156):

 Replying to [comment:14 mouse07410]:
 > I'm a latecomer here, and don't have the full context. But, as I've done
 a lot with compiling optimized crypto code on Mac (outside of Macports):
 >
 > In my experience, Clang requires flags {{{-maesni -mpcmul}}} for code
 like this. GCC, in addition to that, requires a different assembler, like
 env variable {{{AS_INTEGRATED_ASSEMBLER=1}}} and {{{CFLAGS += -Wa,-q
 -Wa,-march=native}}} (re. {{{-march}}}: maybe {{{-maesni -mpcmul}}}
 instead).

 It builds on PPC with an old assembler with no problems (I think Macports
 `as`, correct me if I am wrong). So it ''should'' build on Intel with the
 same too. The problem is that certain cpu-specific improvements were hard-
 wired into `nss` code without thinking through that they gonna break the
 code on old Intel systems.

 Solution should be to make cpu-specific instructions optional, not to
 force everyone use an external assembler from a specific vendor. IMO.

-- 
Ticket URL: <https://trac.macports.org/ticket/65153#comment:17>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list