[llvm-commits] [llvm] r144361 - in /llvm/trunk: lib/Target/ARM/ARMISelLowering.cpp test/CodeGen/ARM/2011-11-07-PromoteVectorLoadStore.ll
Eli Friedman
eli.friedman at gmail.com
Thu Nov 10 19:16:38 PST 2011
Author: efriedma
Date: Thu Nov 10 21:16:38 2011
New Revision: 144361
URL: http://llvm.org/viewvc/llvm-project?rev=144361&view=rev
Log:
Make sure to expand SIGN_EXTEND_INREG for NEON vectors. PR11319, round 3.
Modified:
llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp
llvm/trunk/test/CodeGen/ARM/2011-11-07-PromoteVectorLoadStore.ll
Modified: llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp?rev=144361&r1=144360&r2=144361&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp Thu Nov 10 21:16:38 2011
@@ -127,6 +127,7 @@
setOperationAction(ISD::EXTRACT_SUBVECTOR, VT.getSimpleVT(), Legal);
setOperationAction(ISD::SELECT, VT.getSimpleVT(), Expand);
setOperationAction(ISD::SELECT_CC, VT.getSimpleVT(), Expand);
+ setOperationAction(ISD::SIGN_EXTEND_INREG, VT.getSimpleVT(), Expand);
if (VT.isInteger()) {
setOperationAction(ISD::SHL, VT.getSimpleVT(), Custom);
setOperationAction(ISD::SRA, VT.getSimpleVT(), Custom);
Modified: llvm/trunk/test/CodeGen/ARM/2011-11-07-PromoteVectorLoadStore.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2011-11-07-PromoteVectorLoadStore.ll?rev=144361&r1=144360&r2=144361&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/2011-11-07-PromoteVectorLoadStore.ll (original)
+++ llvm/trunk/test/CodeGen/ARM/2011-11-07-PromoteVectorLoadStore.ll Thu Nov 10 21:16:38 2011
@@ -13,3 +13,12 @@
store <2 x i8> %3, <2 x i8>* @i8_res
ret void
}
+
+define void @test_neon_ld_st_volatile_with_ashr_2xi8() {
+; CHECK: test_neon_ld_st_volatile_with_ashr_2xi8:
+ %1 = load volatile <2 x i8>* @i8_src1
+ %2 = load volatile <2 x i8>* @i8_src2
+ %3 = ashr <2 x i8> %1, %2
+ store volatile <2 x i8> %3, <2 x i8>* @i8_res
+ ret void
+}
More information about the llvm-commits
mailing list