mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-14 15:39:06 +00:00
d2b1fb27df
instead of with mmx registers. This horribleness is apparently done by gcc to avoid having to insert emms in places that really should have it. This is the second half of rdar://5741668. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47474 91177308-0d34-0410-b5e6-96231b3b80d8
16 lines
503 B
LLVM
16 lines
503 B
LLVM
; RUN: llvm-as < %s | llc -march=x86-64 | grep {movq.*(%rsi), %rax}
|
|
; RUN: llvm-as < %s | llc -march=x86 | grep {movl.*4(%eax),}
|
|
|
|
; This test should use GPRs to copy the mmx value, not MMX regs. Using mmx regs,
|
|
; increases the places that need to use emms.
|
|
|
|
; rdar://5741668
|
|
target triple = "x86_64-apple-darwin8"
|
|
|
|
define void @foo(<1 x i64>* %x, <1 x i64>* %y) nounwind {
|
|
entry:
|
|
%tmp1 = load <1 x i64>* %y, align 8 ; <<1 x i64>> [#uses=1]
|
|
store <1 x i64> %tmp1, <1 x i64>* %x, align 8
|
|
ret void
|
|
}
|