[llvm-commits] [PATCH] ARM strexd and ldrexd intrinsics

Bruno Cardoso Lopes bruno.cardoso at gmail.com
Tue May 24 14:17:15 PDT 2011


Hi,

Add support for ARM ldrexd/strexd intrinsics. ldrexd and strexd both
use register pairs to load/store i64 values. The register pair
constraint specifies that the first register should be even and the
second the following odd. Teach the pre-regalloc LoadStoreOptimizer to
use register allocator hints to respect the constraint and teach the
post-reagalloc to fix the pair (with a very conservative approach)
when the hint fails. A testcase is also present.

OK to commit?

-- 
Bruno Cardoso Lopes
http://www.brunocardoso.cc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: clang-strexd-ldrexd.patch
Type: application/octet-stream
Size: 2451 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20110524/a6560c6c/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm-strexd-ldrexd.patch
Type: application/octet-stream
Size: 17697 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20110524/a6560c6c/attachment-0001.obj>


More information about the llvm-commits mailing list