; NOTE: Assertions have been autogenerated by utils/update_test_checks.py ; RUN: opt -passes='vector-combine' -S -mtriple=powerpc64-ibm-aix-xcoff %s -o - | FileCheck %s --check-prefix=BE define i64 @g(<8 x i8> %v) { ; BE-LABEL: @g( ; BE-NEXT: [[TMP1:%.*]] = freeze <8 x i8> [[V:%.*]] ; BE-NEXT: [[TMP2:%.*]] = bitcast <8 x i8> [[TMP1]] to i64 ; BE-NEXT: [[TMP3:%.*]] = and i64 [[TMP2]], 255 ; BE-NEXT: [[TMP4:%.*]] = lshr i64 [[TMP2]], 56 ; BE-NEXT: [[Z:%.*]] = zext <8 x i8> [[V]] to <8 x i64> ; BE-NEXT: [[E0:%.*]] = extractelement <8 x i64> [[Z]], i32 0 ; BE-NEXT: [[E7:%.*]] = extractelement <8 x i64> [[Z]], i32 7 ; BE-NEXT: [[SUM:%.*]] = add i64 [[TMP4]], [[TMP3]] ; BE-NEXT: ret i64 [[SUM]] ; %z = zext <8 x i8> %v to <8 x i64> %e0 = extractelement <8 x i64> %z, i32 0 %e7 = extractelement <8 x i64> %z, i32 7 %sum = add i64 %e0, %e7 ret i64 %sum }