Add sparcv9 support to lib/Basic/Targets.cpp

Rafael EspĂ­ndola rafael.espindola at
Tue Apr 16 05:03:47 PDT 2013

On 16 April 2013 00:59, Jakob Stoklund Olesen <stoklund at> wrote:
> Hi,
> Please review this patch which adds SPARC v9 support to Targets.cpp.
> Triple::sparcv9 is the 64-bit counterpart to Triple::sparc. The architectures are very similar, so they share most of the TargetInfo implementation. I included operating systems with known sparcv9 ports in AllocateTarget().
> This also fixes two issues with the existing 32-bit sparc data layout string: It was accidentally marked as little endian, and there was no stack alignment. A 64-bit aligned stack is required by the SPARC v8 System V ABI.

Does the v9 also have a 32 bit mode like the x86_64 cpus do? If so,
wouldn't it be better to call this sparc64 and the v8 x v9 distinction
is then more like the SSE x no-SSE in x86 cpus?

 LGTM with or without the name change, just explain it in the commit
message or a comment.

> Thanks,
> /jakob


More information about the cfe-commits mailing list