Lines Matching refs:ByteStart
184 /// its bytes used. The bytes used are indicated by ByteStart (which is the
192 static Constant *ExtractConstantBytes(Constant *C, unsigned ByteStart,
199 assert(ByteStart+ByteSize <= CSize && "Extracting invalid piece from input");
205 if (ByteStart)
206 V = V.lshr(ByteStart*8);
219 Constant *RHS = ExtractConstantBytes(CE->getOperand(1), ByteStart,ByteSize);
228 Constant *LHS = ExtractConstantBytes(CE->getOperand(0), ByteStart,ByteSize);
234 Constant *RHS = ExtractConstantBytes(CE->getOperand(1), ByteStart,ByteSize);
242 Constant *LHS = ExtractConstantBytes(CE->getOperand(0), ByteStart,ByteSize);
258 if (ByteStart >= CSize-ShAmt)
262 if (ByteStart+ByteSize+ShAmt <= CSize)
263 return ExtractConstantBytes(CE->getOperand(0), ByteStart+ShAmt, ByteSize);
280 if (ByteStart+ByteSize <= ShAmt)
284 if (ByteStart >= ShAmt)
285 return ExtractConstantBytes(CE->getOperand(0), ByteStart-ShAmt, ByteSize);
296 if (ByteStart*8 >= SrcBitSize)
301 if (ByteStart == 0 && ByteSize*8 == SrcBitSize)
306 if ((SrcBitSize&7) == 0 && (ByteStart+ByteSize)*8 <= SrcBitSize)
307 return ExtractConstantBytes(CE->getOperand(0), ByteStart, ByteSize);
311 if ((ByteStart+ByteSize)*8 < SrcBitSize) {
314 if (ByteStart)
316 ConstantInt::get(Res->getType(), ByteStart*8));