diff options
| author | Craig Topper <craig.topper@gmail.com> | 2013-07-17 06:58:23 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@gmail.com> | 2013-07-17 06:58:23 +0000 |
| commit | 55475d448b513595787dfac62f7a1c069268840e (patch) | |
| tree | 3ee3f9098f0f48d65d087d10a6e98cec7ed44897 /llvm/lib/Target/X86/X86FastISel.cpp | |
| parent | 46cbc2ed50e27a5cfade691f7a5586fa7b933072 (diff) | |
| download | bcm5719-llvm-55475d448b513595787dfac62f7a1c069268840e.tar.gz bcm5719-llvm-55475d448b513595787dfac62f7a1c069268840e.zip | |
Teach x86 fast-isel to use AVX opcodes for vector stores when AVX is enabled.
llvm-svn: 186496
Diffstat (limited to 'llvm/lib/Target/X86/X86FastISel.cpp')
| -rw-r--r-- | llvm/lib/Target/X86/X86FastISel.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/lib/Target/X86/X86FastISel.cpp b/llvm/lib/Target/X86/X86FastISel.cpp index 7419822b673..8c9575c8b77 100644 --- a/llvm/lib/Target/X86/X86FastISel.cpp +++ b/llvm/lib/Target/X86/X86FastISel.cpp @@ -264,24 +264,24 @@ X86FastISel::X86FastEmitStore(EVT VT, unsigned ValReg, break; case MVT::v4f32: if (Aligned) - Opc = X86::MOVAPSmr; + Opc = Subtarget->hasAVX() ? X86::VMOVAPSmr : X86::MOVAPSmr; else - Opc = X86::MOVUPSmr; + Opc = Subtarget->hasAVX() ? X86::VMOVUPSmr : X86::MOVUPSmr; break; case MVT::v2f64: if (Aligned) - Opc = X86::MOVAPSmr; + Opc = Subtarget->hasAVX() ? X86::VMOVAPSmr : X86::MOVAPSmr; else - Opc = X86::MOVUPSmr; + Opc = Subtarget->hasAVX() ? X86::VMOVUPSmr : X86::MOVUPSmr; break; case MVT::v4i32: case MVT::v2i64: case MVT::v8i16: case MVT::v16i8: if (Aligned) - Opc = X86::MOVDQAmr; + Opc = Subtarget->hasAVX() ? X86::VMOVDQAmr : X86::MOVDQAmr; else - Opc = X86::MOVDQUmr; + Opc = Subtarget->hasAVX() ? X86::VMOVDQUmr : X86::MOVDQUmr; break; } |

