It would appear that gcc supports the __float128 type on X86_64. Systems with this architecture that I've seen have the GNU C++ library configured with _GLIBCXX_USE_FLOAT128 defined. This in turn is used in at least one header (type_traits) and there is one template specialization with this type in the header. As a result, Clang no longer compiles this header with -std=gnu++11.
This patch enables this type on X86_64 targets.
I am not sure this is the right way to do this, but it seems to encapsulate the requested semantics (i.e. Linux/i386...).