Lines Matching refs:lir

906     ArmLIR *lir;
908 for (lir = (ArmLIR *) cUnit->firstLIRInsn; lir; lir = NEXT_LIR(lir)) {
909 if (lir->opCode < 0) {
910 if ((lir->opCode == kArmPseudoPseudoAlign4) &&
912 (lir->operands[0] == 1)) {
918 if (lir->isNop) {
922 if (lir->opCode == kThumbLdrPcRel ||
923 lir->opCode == kThumb2LdrPcRel12 ||
924 lir->opCode == kThumbAddPcRel ||
925 ((lir->opCode == kThumb2Vldrs) && (lir->operands[1] == rpc))) {
926 ArmLIR *lirTarget = (ArmLIR *) lir->generic.target;
927 intptr_t pc = (lir->generic.offset + 4) & ~3;
933 intptr_t target = lirTarget->generic.offset + lir->operands[2];
939 if ((lir->opCode == kThumb2LdrPcRel12) && (delta > 4091)) {
944 if (lir->opCode == kThumb2Vldrs) {
945 lir->operands[2] = delta >> 2;
947 lir->operands[1] = (lir->opCode == kThumb2LdrPcRel12) ?
950 } else if (lir->opCode == kThumb2Cbnz || lir->opCode == kThumb2Cbz) {
951 ArmLIR *targetLIR = (ArmLIR *) lir->generic.target;
952 intptr_t pc = lir->generic.offset + 4;
962 lir->operands[1] = delta >> 1;
964 } else if (lir->opCode == kThumbBCond ||
965 lir->opCode == kThumb2BCond) {
966 ArmLIR *targetLIR = (ArmLIR *) lir->generic.target;
967 intptr_t pc = lir->generic.offset + 4;
970 if ((lir->opCode == kThumbBCond) && (delta > 254 || delta < -256)) {
973 lir->operands[0] = delta >> 1;
974 } else if (lir->opCode == kThumbBUncond) {
975 ArmLIR *targetLIR = (ArmLIR *) lir->generic.target;
976 intptr_t pc = lir->generic.offset + 4;
983 lir->operands[0] = delta >> 1;
984 } else if (lir->opCode == kThumbBlx1) {
985 assert(NEXT_LIR(lir)->opCode == kThumbBlx2);
987 intptr_t curPC = (startAddr + lir->generic.offset + 4) & ~3;
988 intptr_t target = lir->operands[1];
997 lir->operands[0] = (delta >> 12) & 0x7ff;
998 NEXT_LIR(lir)->operands[0] = (delta>> 1) & 0x7ff;
1001 ArmEncodingMap *encoder = &EncodingMap[lir->opCode];
1007 operand = lir->operands[i];
1180 LIR *lir;
1243 for (lir = cUnit->wordList; lir; lir = lir->next) {
1244 lir->offset = offset;