[Bug target/80782] New: Feature request: use the llvm/clang assembler on Mac
rjvbertin at gmail dot com
gcc-bugzilla@gcc.gnu.org
Tue May 16 17:01:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80782
Bug ID: 80782
Summary: Feature request: use the llvm/clang assembler on Mac
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: rjvbertin at gmail dot com
Target Milestone: ---
Created attachment 41367
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=41367&action=edit
wrapper to make "clang-as" callable as [g]as
Apple provides an ageing GNU as fork as part of its cctools package: it's based
on gas 1.38 and thus lacks support for CPU instruction sets added after that
release.
As a result, GCC generates code that fails to assemble when using optimisation
for any CPU that has support for AVX or newer intrinsics. A pity and often
annoying because the failure can happen only late during a build process.
The easiest way around this would be to use the assembler that is actually used
by clang.
I'm attaching a wrapper script that I have been using to build boost, R and a
few KF5 applications with full optimisation for an i7 CPU on Mac OS X 10.9.5 .
(The resulting R binary is consistently a few percent faster than the same code
built with clang 4.0)
For some reason I fail to understand the GCC build process fails when using
this wrapper: the tconfig.h header file is not generated. I have worked around
that by providing a shunt in the wrapper that just hands off the command to the
regular as executable, but there must be a more elegant way.
More information about the Gcc-bugs
mailing list