This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: arch-specific template code


On Sat, Sep 8, 2012 at 5:19 AM, Paolo Carlini <paolo.carlini@oracle.com> wrote:
> Good, good. I don't see any problem with integrating the code more or less
> as-is, we have only to figure out a suited, neat, scheme for the includes.

How about the attached patch?

- the cpu/* directories have a subdir opt/ which will contain the
headers with optimizations

- there always has to be an appropriate header in config/generic/opt/*

- it will be necessary to differentiate between optimizations used in,
say, <random> and <ext/random>.  This is the perhaps not so clean
part.  The problem is that the file has to be included between the
definition of the data structures and the #include of the .tcc file.
As you can see in the patch, we need for function which are not
template specialization be able to prevent the definition in .tcc
files to happen


This scheme is scalable and shouldn't be confusing.  The patch so far
only cleans up the existing <ext/random> file.  I haven't added the
specialization yet.

OK?

Attachment: d-random-cpu-opt
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]