Lines Matching defs:GRLen
2633 // if Shamt-GRLen < 0: // Shamt < GRLen
2635 // Hi = (Hi << Shamt) | ((Lo >>u 1) >>u (GRLen-1 ^ Shamt))
2638 // Hi = Lo << (Shamt-GRLen)
2675 // if Shamt-GRLen < 0: // Shamt < GRLen
2676 // Lo = (Lo >>u Shamt) | ((Hi << 1) << (ShAmt ^ GRLen-1))
2679 // Lo = Hi >>s (Shamt-GRLen);
2680 // Hi = Hi >>s (GRLen-1)
2683 // if Shamt-GRLen < 0: // Shamt < GRLen
2684 // Lo = (Lo >>u Shamt) | ((Hi << 1) << (ShAmt ^ GRLen-1))
2687 // Lo = Hi >>u (Shamt-GRLen);
4904 // Pass a 2*GRLen argument that has been split into two GRLen values through
4906 static bool CC_LoongArchAssign2GRLen(unsigned GRLen, CCState &State,
4910 unsigned GRLenInBytes = GRLen / 8;
4947 unsigned GRLen = DL.getLargestLegalIntTypeSizeInBits();
4948 assert((GRLen == 32 || GRLen == 64) && "Unspport GRLen");
4949 MVT GRLenVT = GRLen == 32 ? MVT::i32 : MVT::i64;
4982 } else if (UseGPRForFloat && GRLen == 64 && ValVT == MVT::f64) {
4985 } else if (UseGPRForFloat && GRLen == 32 && ValVT == MVT::f64) {
4991 // that it is assigned an 'even' or 'aligned' register if it has (2*GRLen)/8
4995 // 2*GRLen, so the register alignment rule does not apply.
4996 unsigned TwoGRLenInBytes = (2 * GRLen) / 8;
5036 return CC_LoongArchAssign2GRLen(GRLen, State, VA, AF, ValNo, ValVT, LocVT,
5042 unsigned StoreSizeBytes = GRLen / 8;
5043 Align StackAlign = Align(GRLen / 8);
5367 // ensure that the frame pointer is 2*GRLen-aligned, which in turn ensures
5368 // offsets to even-numbered registered remain 2*GRLen-aligned.
5986 getIntrinsicForMaskedAtomicRMWBinOp(unsigned GRLen,
5988 if (GRLen == 64) {
6012 if (GRLen == 32) {
6028 llvm_unreachable("Unexpected GRLen\n");
6082 unsigned GRLen = Subtarget.getGRLen();
6084 Builder.getIntN(GRLen, static_cast<uint64_t>(AI->getOrdering()));
6088 getIntrinsicForMaskedAtomicRMWBinOp(GRLen, AI->getOperation()), Tys);
6090 if (GRLen == 64) {
6100 // bits to shift the value into position. Pass GRLen-ShiftAmt-ValWidth, which
6109 Builder.CreateSub(Builder.getIntN(GRLen, GRLen - ValWidth), ShiftAmt);
6117 if (GRLen == 64)
6278 // TODO: Support fixed vectors up to GRLen?
6407 // Omit the optimization if the data size exceeds GRLen.