Opened 7 years ago

Last modified 7 years ago

#54166 new submission

[submission] gccas

Reported by: RJVB (René Bertin) Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: jeremyhu (Jeremy Huddleston Sequoia), colinhowell (Colin Douglas Howell)
Port: gccas

Description

Early llvm versions contained a utility called gccas which sat between the llvm-gcc front-end and the llvm assembler.

This proposal recreates a similar script that can be used as an alternative to the as command from port:cctools, invoking the clang assembler instead. It's main purpose is to be used as the default assembler in the GCC ports but it should be possible to use it anywhere a more recent GNU as is required than the one shipped with port:cctools.

I've tested the script after rebuilding port:gcc6 : it allows to build a port like R with -march=native even on my i7 where this would normally lead to errors due to the use of AVX instructions that cctools:as cannot handle.

Note that I'm open to other names for the script and port.

Attachments (3)

Portfile (1.8 KB) - added by RJVB (René Bertin) 7 years ago.
gccas.sh (1.9 KB) - added by RJVB (René Bertin) 7 years ago.
gccas.2.sh (2.3 KB) - added by RJVB (René Bertin) 7 years ago.

Download all attachments as: .zip

Change History (7)

Changed 7 years ago by RJVB (René Bertin)

Attachment: Portfile added

Changed 7 years ago by RJVB (René Bertin)

Attachment: gccas.sh added

comment:1 Changed 7 years ago by RJVB (René Bertin)

Another thing: this could be installed by the clang ports ... but then how to install a wrapper that invokes the system clang?

comment:2 Changed 7 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign removed

Changed 7 years ago by RJVB (René Bertin)

Attachment: gccas.2.sh added

comment:3 Changed 7 years ago by RJVB (René Bertin)

Digging on:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80782

It looks like we should be able to patch gcc/config/darwin.h to force as to call the clang assembler systematically.

I tested using as -q as the assembler and that doesn't cause a single issue with the GCC build.

comment:4 Changed 7 years ago by colinhowell (Colin Douglas Howell)

Cc: colinhowell added
Note: See TracTickets for help on using tickets.