Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

LLVM is currently not suitable for SPARC at all; it's existing SPARC backend was, to put it kindly, not written by someone intimately familiar with the architecture. There are problems on other architectures as well. ARM and x86 are really the best maintained (unsurprising).

Regardless, one of LLVM's biggest problems internally is the number of unaligned accesses, which hurts its performance on many architectures (except x86 of course, where the penalty is very minor). That's not specific to SPARC, but it does hurt performance there quite a bit as well as cause other problems.



Are you saying LLVM has a problem with producing unaligned accesses, as in you can't prevent this?

That would be pretty awful; on how many architectures do they still cause exceptions?

ARM says the ARMv6 was the first architecture to support this (http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc....).


No, not with producing unaligned accesses, a problem with unaligned accesses in the LLVM code itself.

They're worked around by forcing alignment at the cost of performance if I remember correctly, or in some cases, they're not and cause LLVM to fail.

The alignment problems may be unique to the SPARC backend of LLVM, but I don't recall the specifics.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: