[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