OSDN Git Service

[AArch64] Fix i64 nontemporal high-half extraction.
authorAhmed Bougacha <ahmed.bougacha@gmail.com>
Fri, 29 Jan 2016 01:08:41 +0000 (01:08 +0000)
committerAhmed Bougacha <ahmed.bougacha@gmail.com>
Fri, 29 Jan 2016 01:08:41 +0000 (01:08 +0000)
commit3ea0d92811bd4483f4a5039de4efc4aa105de5cb
treea30e28292c059641260a32feb110b3edec7d4657
parent79cc2baa7b1ce49ca8c39a6ea5d7ef5cab9d7a95
[AArch64] Fix i64 nontemporal high-half extraction.

Since we only have pair - not single - nontemporal store instructions,
we have to extract the high part into a separate register to be able
to use them.

When the initial nontemporal codegen support was added, I wrote the
extract using the nonsensical UBFX [0,32[.
Use the correct LSR form instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@259134 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AArch64/AArch64InstrInfo.td
test/CodeGen/AArch64/nontemporal.ll