// Two ops + 1 extract + 1 insert = 4.
{ ISD::MUL, MVT::v16i16, 4 },
{ ISD::MUL, MVT::v8i32, 4 },
+ { ISD::SUB, MVT::v32i8, 4 },
+ { ISD::ADD, MVT::v32i8, 4 },
+ { ISD::SUB, MVT::v16i16, 4 },
+ { ISD::ADD, MVT::v16i16, 4 },
{ ISD::SUB, MVT::v8i32, 4 },
{ ISD::ADD, MVT::v8i32, 4 },
{ ISD::SUB, MVT::v4i64, 4 },
%G = add <8 x i16> undef, undef
; SSSE3: cost of 2 {{.*}} %H = add
; SSE42: cost of 2 {{.*}} %H = add
- ; AVX: cost of 2 {{.*}} %H = add
+ ; AVX: cost of 4 {{.*}} %H = add
; AVX2: cost of 1 {{.*}} %H = add
; AVX512: cost of 1 {{.*}} %H = add
%H = add <16 x i16> undef, undef
; SSSE3: cost of 4 {{.*}} %I = add
; SSE42: cost of 4 {{.*}} %I = add
- ; AVX: cost of 4 {{.*}} %I = add
+ ; AVX: cost of 8 {{.*}} %I = add
; AVX2: cost of 2 {{.*}} %I = add
; AVX512F: cost of 2 {{.*}} %I = add
; AVX512BW: cost of 1 {{.*}} %I = add
%J = add <16 x i8> undef, undef
; SSSE3: cost of 2 {{.*}} %K = add
; SSE42: cost of 2 {{.*}} %K = add
- ; AVX: cost of 2 {{.*}} %K = add
+ ; AVX: cost of 4 {{.*}} %K = add
; AVX2: cost of 1 {{.*}} %K = add
; AVX512: cost of 1 {{.*}} %K = add
%K = add <32 x i8> undef, undef
; SSSE3: cost of 4 {{.*}} %L = add
; SSE42: cost of 4 {{.*}} %L = add
- ; AVX: cost of 4 {{.*}} %L = add
+ ; AVX: cost of 8 {{.*}} %L = add
; AVX2: cost of 2 {{.*}} %L = add
; AVX512F: cost of 2 {{.*}} %L = add
; AVX512BW: cost of 1 {{.*}} %L = add
%G = sub <8 x i16> undef, undef
; SSSE3: cost of 2 {{.*}} %H = sub
; SSE42: cost of 2 {{.*}} %H = sub
- ; AVX: cost of 2 {{.*}} %H = sub
+ ; AVX: cost of 4 {{.*}} %H = sub
; AVX2: cost of 1 {{.*}} %H = sub
; AVX512: cost of 1 {{.*}} %H = sub
%H = sub <16 x i16> undef, undef
; SSSE3: cost of 4 {{.*}} %I = sub
; SSE42: cost of 4 {{.*}} %I = sub
- ; AVX: cost of 4 {{.*}} %I = sub
+ ; AVX: cost of 8 {{.*}} %I = sub
; AVX2: cost of 2 {{.*}} %I = sub
; AVX512F: cost of 2 {{.*}} %I = sub
; AVX512BW: cost of 1 {{.*}} %I = sub
%J = sub <16 x i8> undef, undef
; SSSE3: cost of 2 {{.*}} %K = sub
; SSE42: cost of 2 {{.*}} %K = sub
- ; AVX: cost of 2 {{.*}} %K = sub
+ ; AVX: cost of 4 {{.*}} %K = sub
; AVX2: cost of 1 {{.*}} %K = sub
; AVX512: cost of 1 {{.*}} %K = sub
%K = sub <32 x i8> undef, undef
; SSSE3: cost of 4 {{.*}} %L = sub
; SSE42: cost of 4 {{.*}} %L = sub
- ; AVX: cost of 4 {{.*}} %L = sub
+ ; AVX: cost of 8 {{.*}} %L = sub
; AVX2: cost of 2 {{.*}} %L = sub
; AVX512F: cost of 2 {{.*}} %L = sub
; AVX512BW: cost of 1 {{.*}} %L = sub