forked from OSchip/llvm-project
18 lines
658 B
LLVM
18 lines
658 B
LLVM
; Make sure that when the stack may be misaligned on function entry, fixed frame
|
|
; elements (here: XMM spills) are accessed using instructions that tolerate
|
|
; unaligned access.
|
|
;
|
|
; RUN: llc -mtriple=x86_64-unknown-linux-gnu -mcpu=x86-64 -mattr=+sse,+sse-unaligned-mem --frame-pointer=all < %s | FileCheck %s
|
|
|
|
define dso_local preserve_allcc void @func() #0 {
|
|
; CHECK-LABEL: func:
|
|
; CHECK: movups %xmm0, -{{[0-9]+}}(%rbp)
|
|
call void asm sideeffect "", "~{xmm0},~{dirflag},~{fpsr},~{flags}"() #1
|
|
; CHECK: movups -{{[0-9]+}}(%rbp), %xmm0
|
|
ret void
|
|
}
|
|
|
|
attributes #0 = { nounwind }
|
|
!llvm.module.flags = !{!0}
|
|
!0 = !{i32 2, !"override-stack-alignment", i32 8}
|