Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(450)

Unified Diff: src/mips/constants-mips.cc

Issue 1310883005: MIPS: Optimize simulator. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix nits. Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/mips/constants-mips.h ('k') | src/mips/simulator-mips.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/mips/constants-mips.cc
diff --git a/src/mips/constants-mips.cc b/src/mips/constants-mips.cc
index 40d497fd9928bf9a55aa0e088be144052be42b38..ff8a79f1b2246870e4ec1e221f965c2deff05aa0 100644
--- a/src/mips/constants-mips.cc
+++ b/src/mips/constants-mips.cc
@@ -219,151 +219,6 @@ bool Instruction::IsTrap() const {
}
-Instruction::Type Instruction::InstructionType() const {
- switch (OpcodeFieldRaw()) {
- case SPECIAL:
- switch (FunctionFieldRaw()) {
- case JR:
- case JALR:
- case BREAK:
- case SLL:
- case SRL:
- case SRA:
- case SLLV:
- case SRLV:
- case SRAV:
- case MFHI:
- case MFLO:
- case MULT:
- case MULTU:
- case DIV:
- case DIVU:
- case ADD:
- case ADDU:
- case SUB:
- case SUBU:
- case AND:
- case OR:
- case XOR:
- case NOR:
- case SLT:
- case SLTU:
- case TGE:
- case TGEU:
- case TLT:
- case TLTU:
- case TEQ:
- case TNE:
- case MOVZ:
- case MOVN:
- case MOVCI:
- case SELEQZ_S:
- case SELNEZ_S:
- return kRegisterType;
- default:
- return kUnsupported;
- }
- break;
- case SPECIAL2:
- switch (FunctionFieldRaw()) {
- case MUL:
- case CLZ:
- return kRegisterType;
- default:
- return kUnsupported;
- }
- break;
- case SPECIAL3:
- switch (FunctionFieldRaw()) {
- case INS:
- case EXT:
- return kRegisterType;
- case BSHFL: {
- int sa = SaFieldRaw() >> kSaShift;
- switch (sa) {
- case BITSWAP:
- return kRegisterType;
- case WSBH:
- case SEB:
- case SEH:
- return kUnsupported;
- }
- sa >>= kBp2Bits;
- switch (sa) {
- case ALIGN:
- return kRegisterType;
- default:
- return kUnsupported;
- }
- }
- default:
- return kUnsupported;
- }
- break;
- case COP1: // Coprocessor instructions.
- switch (RsFieldRawNoAssert()) {
- case BC1: // Branch on coprocessor condition.
- case BC1EQZ:
- case BC1NEZ:
- return kImmediateType;
- default:
- return kRegisterType;
- }
- break;
- case COP1X:
- return kRegisterType;
- // 16 bits Immediate type instructions. e.g.: addi dest, src, imm16.
- case REGIMM:
- case BEQ:
- case BNE:
- case BLEZ:
- case BGTZ:
- case ADDI:
- case DADDI:
- case ADDIU:
- case SLTI:
- case SLTIU:
- case ANDI:
- case ORI:
- case XORI:
- case LUI:
- case BEQL:
- case BNEL:
- case BLEZL:
- case BGTZL:
- case POP66:
- case POP76:
- case LB:
- case LH:
- case LWL:
- case LW:
- case LBU:
- case LHU:
- case LWR:
- case SB:
- case SH:
- case SWL:
- case SW:
- case SWR:
- case LWC1:
- case LDC1:
- case SWC1:
- case SDC1:
- case PCREL:
- case BC:
- case BALC:
- return kImmediateType;
- // 26 bits immediate type instructions. e.g.: j imm26.
- case J:
- case JAL:
- return kJumpType;
- default:
- return kUnsupported;
- }
- return kUnsupported;
-}
-
-
} // namespace internal
} // namespace v8
« no previous file with comments | « src/mips/constants-mips.h ('k') | src/mips/simulator-mips.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698