[InstSimplify] add tests for insert-of-extract; NFC

llvm-svn: 361575
This commit is contained in:
Sanjay Patel 2019-05-24 00:11:23 +00:00
parent bbf9944a5e
commit 4c5bf0241a

View File

@ -49,3 +49,25 @@ define <4 x i32> @PR1286(<4 x i32> %A) {
%B = insertelement <4 x i32> %A, i32 undef, i32 1
ret <4 x i32> %B
}
define <8 x i8> @extract_insert_same_vec_and_index(<8 x i8> %in) {
; CHECK-LABEL: @extract_insert_same_vec_and_index(
; CHECK-NEXT: [[VAL:%.*]] = extractelement <8 x i8> [[IN:%.*]], i32 5
; CHECK-NEXT: [[VEC:%.*]] = insertelement <8 x i8> [[IN]], i8 [[VAL]], i32 5
; CHECK-NEXT: ret <8 x i8> [[VEC]]
;
%val = extractelement <8 x i8> %in, i32 5
%vec = insertelement <8 x i8> %in, i8 %val, i32 5
ret <8 x i8> %vec
}
define <8 x i8> @extract_insert_same_vec_and_index2(<8 x i8> %in, i32 %index) {
; CHECK-LABEL: @extract_insert_same_vec_and_index2(
; CHECK-NEXT: [[VAL:%.*]] = extractelement <8 x i8> [[IN:%.*]], i32 [[INDEX:%.*]]
; CHECK-NEXT: [[VEC:%.*]] = insertelement <8 x i8> [[IN]], i8 [[VAL]], i32 [[INDEX]]
; CHECK-NEXT: ret <8 x i8> [[VEC]]
;
%val = extractelement <8 x i8> %in, i32 %index
%vec = insertelement <8 x i8> %in, i8 %val, i32 %index
ret <8 x i8> %vec
}