llvm-6502/test/CodeGen/AArch64/neon-spill-fpr8-fpr16.ll
Tim Northover 069bcd7b38 AArch64: add newline to end of test files.
Should be no other change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206174 91177308-0d34-0410-b5e6-96231b3b80d8
2014-04-14 13:18:40 +00:00

31 lines
1009 B
LLVM

; RUN: llc -mtriple=aarch64-none-linux-gnu -mattr=+neon < %s | FileCheck %s
; This file tests the spill of FPR8/FPR16. The volatile loads/stores force the
; allocator to keep the value live until it's needed.
%bigtype_v1i8 = type [20 x <1 x i8>]
define void @spill_fpr8(%bigtype_v1i8* %addr) {
; CHECK-LABEL: spill_fpr8:
; CHECK: 1-byte Folded Spill
; CHECK: 1-byte Folded Reload
%val1 = load volatile %bigtype_v1i8* %addr
%val2 = load volatile %bigtype_v1i8* %addr
store volatile %bigtype_v1i8 %val1, %bigtype_v1i8* %addr
store volatile %bigtype_v1i8 %val2, %bigtype_v1i8* %addr
ret void
}
%bigtype_v1i16 = type [20 x <1 x i16>]
define void @spill_fpr16(%bigtype_v1i16* %addr) {
; CHECK-LABEL: spill_fpr16:
; CHECK: 2-byte Folded Spill
; CHECK: 2-byte Folded Reload
%val1 = load volatile %bigtype_v1i16* %addr
%val2 = load volatile %bigtype_v1i16* %addr
store volatile %bigtype_v1i16 %val1, %bigtype_v1i16* %addr
store volatile %bigtype_v1i16 %val2, %bigtype_v1i16* %addr
ret void
}