Jakob Stoklund Olesen | b0e47cd | 2011-04-05 00:32:44 +0000 | [diff] [blame^] | 1 | ; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s |
| 2 | ; RUN: llc < %s -mtriple=x86_64-win32 | FileCheck %s |
| 3 | ; RUN: llc < %s -march=x86 -mattr=-sse2 | FileCheck %s |
| 4 | ; RUN: llc < %s -march=x86 -mattr=+sse2 | FileCheck %s |
Chris Lattner | 149a4e5 | 2008-02-22 02:09:43 +0000 | [diff] [blame] | 5 | |
| 6 | ; This test should use GPRs to copy the mmx value, not MMX regs. Using mmx regs, |
| 7 | ; increases the places that need to use emms. |
Jakob Stoklund Olesen | b0e47cd | 2011-04-05 00:32:44 +0000 | [diff] [blame^] | 8 | ; CHECK-NOT: %mm |
| 9 | ; CHECK-NOT: emms |
Chris Lattner | 149a4e5 | 2008-02-22 02:09:43 +0000 | [diff] [blame] | 10 | ; rdar://5741668 |
Chris Lattner | 149a4e5 | 2008-02-22 02:09:43 +0000 | [diff] [blame] | 11 | |
Chris Lattner | d2b1fb2 | 2008-02-22 05:18:04 +0000 | [diff] [blame] | 12 | define void @foo(<1 x i64>* %x, <1 x i64>* %y) nounwind { |
Chris Lattner | 149a4e5 | 2008-02-22 02:09:43 +0000 | [diff] [blame] | 13 | entry: |
| 14 | %tmp1 = load <1 x i64>* %y, align 8 ; <<1 x i64>> [#uses=1] |
| 15 | store <1 x i64> %tmp1, <1 x i64>* %x, align 8 |
Chris Lattner | d2b1fb2 | 2008-02-22 05:18:04 +0000 | [diff] [blame] | 16 | ret void |
Chris Lattner | 149a4e5 | 2008-02-22 02:09:43 +0000 | [diff] [blame] | 17 | } |