[LLVMbugs] [Bug 24086] New: ARM64 backend ignores non-temporal hints
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Fri Jul 10 11:40:24 PDT 2015
https://llvm.org/bugs/show_bug.cgi?id=24086
Bug ID: 24086
Summary: ARM64 backend ignores non-temporal hints
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Backend: AArch64
Assignee: unassignedbugs at nondot.org
Reporter: michael.v.zolotukhin at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
> cat test.ll
define void @test_zero_v8f32(<8 x float>* %dst) {
store <8 x float> zeroinitializer, <8 x float>* %dst, align 16, !nontemporal
!1
ret void
}
!1 = !{i32 1}
> llc -mtriple=arm64-unknown-unknown < test.ll
.text
.file "<stdin>"
.globl test_zero_v8f32
.align 2
.type test_zero_v8f32, at function
test_zero_v8f32: // @test_zero_v8f32
.cfi_startproc
// BB#0:
movi v0.2d, #0000000000000000
stp q0, q0, [x0]
ret
.Lfunc_end0:
.size test_zero_v8f32, .Lfunc_end0-test_zero_v8f32
.cfi_endproc
.section ".note.GNU-stack","", at progbits
I expected to see STNP instruction here.
FWIW, x86 backend takes the hint into account:
> llc -mtriple=x86_64-unknown-unknown < test.ll
.text
.file "<stdin>"
.globl test_zero_v8f32
.align 16, 0x90
.type test_zero_v8f32, at function
test_zero_v8f32: # @test_zero_v8f32
.cfi_startproc
# BB#0:
xorps %xmm0, %xmm0
movntps %xmm0, 16(%rdi)
movntps %xmm0, (%rdi)
retq
.Lfunc_end0:
.size test_zero_v8f32, .Lfunc_end0-test_zero_v8f32
.cfi_endproc
.section ".note.GNU-stack","", at progbits
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150710/124b08bd/attachment.html>
More information about the llvm-bugs
mailing list