> On Aug 24, 2017, at 3:48 PM, Richard Smith <rich...@metafoo.co.uk> wrote: > On 24 August 2017 at 12:24, Paul Robinson via Phabricator via cfe-commits > <cfe-commits@lists.llvm.org <mailto:cfe-commits@lists.llvm.org>> wrote: > probinson added a comment. > > Locally we have a couple different tactics for dealing with changes that we > can't support. A more coherent approach would be great. > For example we defined a new TargetCXXABI::Kind value that is mostly > GenericItaniumABI except where it isn't. > I personally did not do most of the various ABI-related tweaks so I don't > claim to have a good handle on them, and we have been slow to get these > things upstream; but I'd love to make that happen. > > I'm looking into adding a more general mechanism to request ABI (bug) > compatibility with a prior version of Clang. > > Paul: is the PS4 toolchain's ABI based on that of a particular Clang release, > or is it a branch from trunk at some point? Or something else? (And which > release / revision?) > > John: X86_64ABIInfo::classifyIntegerMMXAsSSE() has a special case for Darwin > OSes for compatibility with older Clang compilers; likewise for > X86_64ABIInfo::honorsRevision0_98(). Is this a case of wanting compatibility > with an older version of Clang by default when targeting Darwin, or is it > just the case that the platform ABI is different for that target (where the > historical reason for the different choice in the platform ABI was a bug in > older versions of Clang)?
The latter. There was a bug, and we decided that we weren't allowed to fix it, so it's the ABI now. Note that there's no way to override the default. John.
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits