diff options
| author | 2012-11-08 13:37:13 -0800 | |
|---|---|---|
| committer | 2012-11-08 13:37:13 -0800 | |
| commit | d21df09a54b08fbf90f9eb64801f0b03a100b8ec (patch) | |
| tree | 7bad64cf4afe2825a95e09442ab2f029105fbcc7 /src/compiler/codegen/mips/ArchUtility.cc | |
| parent | 9572fa7e2742e5b3c706699a4a9f262cf93fb6e7 (diff) | |
| parent | 4b39c9f1b77ff32cf5760e6bf77c189678e2c9a6 (diff) | |
Merge "Revert "Refactor codegen resource masks"" into dalvik-dev
Diffstat (limited to 'src/compiler/codegen/mips/ArchUtility.cc')
| -rw-r--r-- | src/compiler/codegen/mips/ArchUtility.cc | 41 |
1 files changed, 3 insertions, 38 deletions
diff --git a/src/compiler/codegen/mips/ArchUtility.cc b/src/compiler/codegen/mips/ArchUtility.cc index 9a2b923baf..f837c399ae 100644 --- a/src/compiler/codegen/mips/ArchUtility.cc +++ b/src/compiler/codegen/mips/ArchUtility.cc @@ -22,49 +22,14 @@ namespace art { -/* - * Decode the register id. - */ -u8 getRegMaskCommon(CompilationUnit* cUnit, int reg) -{ - u8 seed; - int shift; - int regId; - - - regId = reg & 0x1f; - /* Each double register is equal to a pair of single-precision FP registers */ - seed = DOUBLEREG(reg) ? 3 : 1; - /* FP register starts at bit position 16 */ - shift = FPREG(reg) ? kMipsFPReg0 : 0; - /* Expand the double register id into single offset */ - shift += regId; - return (seed << shift); -} - -uint64_t getPCUseDefEncoding() -{ - return ENCODE_MIPS_REG_PC; -} - - void setupTargetResourceMasks(CompilationUnit* cUnit, LIR* lir) { DCHECK_EQ(cUnit->instructionSet, kMips); // Mips-specific resource map setup here. - uint64_t flags = EncodingMap[lir->opcode].flags; - - if (flags & REG_DEF_SP) { - lir->defMask |= ENCODE_MIPS_REG_SP; - } - - if (flags & REG_USE_SP) { - lir->useMask |= ENCODE_MIPS_REG_SP; - } - + int flags = EncodingMap[lir->opcode].flags; if (flags & REG_DEF_LR) { - lir->defMask |= ENCODE_MIPS_REG_LR; + lir->defMask |= ENCODE_REG_LR; } } @@ -186,7 +151,7 @@ void oatDumpResourceMask(LIR *lir, u8 mask, const char *prefix) char num[8]; int i; - for (i = 0; i < kMipsRegEnd; i++) { + for (i = 0; i < kRegEnd; i++) { if (mask & (1ULL << i)) { sprintf(num, "%d ", i); strcat(buf, num); |