Lines Matching refs:Hi
93 Value *vlalignb(IRBuilder<> &Builder, Value *Lo, Value *Hi, Value *Amt) const;
94 Value *vralignb(IRBuilder<> &Builder, Value *Lo, Value *Hi, Value *Amt) const;
127 Value *getElementRange(IRBuilder<> &Builder, Value *Lo, Value *Hi, int Start,
1033 auto HexagonVectorCombine::vlalignb(IRBuilder<> &Builder, Value *Lo, Value *Hi, in vlalignb() argument
1035 assert(Lo->getType() == Hi->getType() && "Argument type mismatch"); in vlalignb()
1036 assert(isSectorTy(Hi->getType())); in vlalignb()
1038 return Hi; in vlalignb()
1039 int VecLen = getSizeOf(Hi); in vlalignb()
1041 return getElementRange(Builder, Lo, Hi, VecLen - IntAmt->getSExtValue(), in vlalignb()
1044 if (HST.isTypeForHVX(Hi->getType())) { in vlalignb()
1050 return createHvxIntrinsic(Builder, V6_vlalignb, Hi->getType(), in vlalignb()
1051 {Hi, Lo, Amt}); in vlalignb()
1055 Value *Pair = concat(Builder, {Lo, Hi}); in vlalignb()
1058 return Builder.CreateBitCast(Trunc, Hi->getType()); in vlalignb()
1062 return vralignb(Builder, Lo, Hi, Sub); in vlalignb()
1067 auto HexagonVectorCombine::vralignb(IRBuilder<> &Builder, Value *Lo, Value *Hi, in vralignb() argument
1069 assert(Lo->getType() == Hi->getType() && "Argument type mismatch"); in vralignb()
1075 return getElementRange(Builder, Lo, Hi, IntAmt->getSExtValue(), VecLen); in vralignb()
1083 {Hi, Lo, Amt}); in vralignb()
1087 Value *Pair = concat(Builder, {Lo, Hi}); in vralignb()
1095 Value *Hi64 = Builder.CreateBitCast(Hi, Int64Ty); in vralignb()
1460 Value *Hi, int Start, in getElementRange() argument
1465 return Builder.CreateShuffleVector(Lo, Hi, SMask); in getElementRange()