Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Tue, 8 Dec 2015 00:41:20 +0300
From: Solar Designer <solar@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: gcc target_clones

Hi,

This is a new/upcoming gcc feature that we might find useful:

https://developerblog.redhat.com/2015/12/07/octobernovember-2015-gnu-toolchain-update/

"GCC's function attribute feature has been extended to support another
attribute: target_clones (<options>).  This is used to specify that a
function is to be cloned into multiple versions compiled with different
target options than specified on the command line.  The supported
options and restrictions are the same as for target attribute.
For instance on an x86, you could compile a function with
target_clones("sse4.1,avx").  It will create 2 function clones, one
compiled with -msse4.1 and another with -mavx.  At the function call it
will create resolver ifunc, that will dynamically call a clone suitable
for current architecture."

I found that this was discussed on the gcc-patches list (along with
actual gcc patches implementing the feature) in October.  It is unclear
to me whether this made it, or will make it soon, into an official gcc
release.

Alexander

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.