This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC 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]

[Bug bootstrap/54419] [4.8 Regression] Compiling libstdc++-v3/src/c++11/random.cc fails on platforms not knowing rdrand


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54419

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #16 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-09-03 08:30:18 UTC ---
The usual way in GCC is that gcc/configure* checks are added for assembler
features that affects preexisting ISAs, when adding new ISA extensions that
aren't enabled by default or that would be enabled by default only by the user
forcing it on by default in configure options, assembly feature tests aren't
added.  The compiler is still usable when not requesting the ISA extensions
when using older assembler.  So say when AVX or some other ISA extension
(RDRAND in this case) is added, -mrdrand will only work if assembler supports
it, and it is up to the users to ensure he has recent enough assembler if they
want to use it.
E.g. gcc/testsuite/ has for that dejagnu checks for tests that enable those
extensions and want to be assembled (or even executed).

So, I think this is something that should be tested for in libstdc++-v3
configure and enabled in the headers only if _GLIBCXX_HAVE_* macro is defined.


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