<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jul 26, 2013 at 2:39 PM, Bill Schmidt <span dir="ltr"><<a href="mailto:wschmidt@linux.vnet.ibm.com" target="_blank" class="cremed">wschmidt@linux.vnet.ibm.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div id=":6tj" style="overflow:hidden">Both GCC and LLVM will implicitly define __ppc__ and __powerpc__ for<br>
all PowerPC targets, whether 32- or 64-bit.  They will both implicitly<br>
define __ppc64__ and __powerpc64__ for 64-bit PowerPC targets, and not<br>
for 32-bit targets.</div></blockquote><div><br></div><div>I don't think this is true for all versions of GCC we use, and certainly isn't true for all versions of Clang (see my commit some time ago fixing a Clang bug here). </div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div id=":6tj" style="overflow:hidden">  We cannot be sure that all other possible<br>
compilers used to compile Clang/LLVM define both __ppc__ and<br>
__powerpc__, for example, so it is best to check for both when relying<br>
on either inside the Clang/LLVM code base.</div></blockquote></div><br>Actually, we can be sure that they don't. ;] GCC, Clang, and xlC are (afaik) the only ppc targeting toolchains we need to support. That said, we need to support many versions of them.</div>
</div>