how long to keep support for gcc on x86?
Warner Losh
imp at bsdimp.com
Mon Jan 14 21:42:14 UTC 2013
On Jan 14, 2013, at 2:22 PM, John-Mark Gurney wrote:
> John Baldwin wrote this message on Mon, Jan 14, 2013 at 11:10 -0500:
>> On Sunday, January 13, 2013 8:24:02 am Konstantin Belousov wrote:
>>> On Sun, Jan 13, 2013 at 12:09:09AM -0800, Peter Wemm wrote:
>>>> On Sat, Jan 12, 2013 at 11:44 PM, Adrian Chadd <adrian at freebsd.org> wrote:
>>>>
>>>>> Thus I think adding clang-only code to the system right now is very,
>>>>> very premature. There still seem to be reasons to run systems on GCC
>>>>> instead of clang.
>>>>
>>>> I don't have a problem with it so long as the system isn't *broken* if
>>>> you're not using clang. ie: if the status-quo is maintained for gcc
>>>> systems and g-faster bits are enabled with clang. It's fine to
>>>> provide incentives to try clang, but it is not ok to regress the gcc
>>>> case.
>>> Absolutely agree.
>>>
>>> Please note that in the AES-NI case, gcc 'support' is only partially
>>> gcc issue, if gcc at all. Our 2.17 gas does not know about AES-NI
>>> mnemonics and cannot assemble them.
>>
>> It is not but so hard to add new instructions to binutils. I did it recently
>> for the xsave stuff as well the instructions needed by bhyve. How many
>> instructions are you talking about (and which ones)?
>
> Would adding them to binutils support inline assembly? Though
> supporting them in gas would be useful tool, but inline assembly would
> be best (so the compiler can do register allocation optimizations)..
Yes, of course. gcc, unlike clang, doesn't have a builtin assembler and the inline assembler is passed through. With the proper register annotation, gcc will do the proper register alloation, etc.
> The instructions are aesenc, aesenclast, aesdec, aesdeclast.. And if
> you want to be complete, aeskeygenassist, aesimc, pclmulqdq... Though
> pclmulqdq isn't currently used...
>
> I'm willing to do some of the work and debugging too, just I don't know
> which files to modify, etc... I couldn't find any good guides on the
> internet that talks about this..
Warner
More information about the freebsd-arch
mailing list