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

Side by Side Diff: src/mips/constants-mips.cc

Issue 6965006: Update mips infrastructure files. (Closed) Base URL: http://github.com/v8/v8.git@bleeding_edge
Patch Set: Fix additional style issues. Created 9 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright 2010 the V8 project authors. All rights reserved. 1 // Copyright 2011 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
11 // with the distribution. 11 // with the distribution.
(...skipping 17 matching lines...) Expand all
29 29
30 #if defined(V8_TARGET_ARCH_MIPS) 30 #if defined(V8_TARGET_ARCH_MIPS)
31 31
32 #include "constants-mips.h" 32 #include "constants-mips.h"
33 33
34 namespace v8 { 34 namespace v8 {
35 namespace internal { 35 namespace internal {
36 36
37 37
38 // ----------------------------------------------------------------------------- 38 // -----------------------------------------------------------------------------
39 // Registers 39 // Registers.
40 40
41 41
42 // These register names are defined in a way to match the native disassembler 42 // These register names are defined in a way to match the native disassembler
43 // formatting. See for example the command "objdump -d <binary file>". 43 // formatting. See for example the command "objdump -d <binary file>".
44 const char* Registers::names_[kNumSimuRegisters] = { 44 const char* Registers::names_[kNumSimuRegisters] = {
45 "zero_reg", 45 "zero_reg",
46 "at", 46 "at",
47 "v0", "v1", 47 "v0", "v1",
48 "a0", "a1", "a2", "a3", 48 "a0", "a1", "a2", "a3",
49 "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", 49 "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7",
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 } 138 }
139 i++; 139 i++;
140 } 140 }
141 141
142 // No Cregister with the reguested name found. 142 // No Cregister with the reguested name found.
143 return kInvalidFPURegister; 143 return kInvalidFPURegister;
144 } 144 }
145 145
146 146
147 // ----------------------------------------------------------------------------- 147 // -----------------------------------------------------------------------------
148 // Instruction 148 // Instructions.
149 149
150 bool Instruction::IsForbiddenInBranchDelay() const { 150 bool Instruction::IsForbiddenInBranchDelay() const {
151 const int op = OpcodeFieldRaw(); 151 const int op = OpcodeFieldRaw();
152 switch (op) { 152 switch (op) {
153 case J: 153 case J:
154 case JAL: 154 case JAL:
155 case BEQ: 155 case BEQ:
156 case BNE: 156 case BNE:
157 case BLEZ: 157 case BLEZ:
158 case BGTZ: 158 case BGTZ:
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 break; 286 break;
287 case SPECIAL3: 287 case SPECIAL3:
288 switch (FunctionFieldRaw()) { 288 switch (FunctionFieldRaw()) {
289 case INS: 289 case INS:
290 case EXT: 290 case EXT:
291 return kRegisterType; 291 return kRegisterType;
292 default: 292 default:
293 UNREACHABLE(); 293 UNREACHABLE();
294 }; 294 };
295 break; 295 break;
296 case COP1: // Coprocessor instructions 296 case COP1: // Coprocessor instructions.
297 switch (RsFieldRawNoAssert()) { 297 switch (RsFieldRawNoAssert()) {
298 case BC1: // branch on coprocessor condition 298 case BC1: // Branch on coprocessor condition.
299 return kImmediateType; 299 return kImmediateType;
300 default: 300 default:
301 return kRegisterType; 301 return kRegisterType;
302 }; 302 };
303 break; 303 break;
304 // 16 bits Immediate type instructions. eg: addi dest, src, imm16 304 // 16 bits Immediate type instructions. eg: addi dest, src, imm16.
305 case REGIMM: 305 case REGIMM:
306 case BEQ: 306 case BEQ:
307 case BNE: 307 case BNE:
308 case BLEZ: 308 case BLEZ:
309 case BGTZ: 309 case BGTZ:
310 case ADDI: 310 case ADDI:
311 case ADDIU: 311 case ADDIU:
312 case SLTI: 312 case SLTI:
313 case SLTIU: 313 case SLTIU:
314 case ANDI: 314 case ANDI:
(...skipping 14 matching lines...) Expand all
329 case SB: 329 case SB:
330 case SH: 330 case SH:
331 case SWL: 331 case SWL:
332 case SW: 332 case SW:
333 case SWR: 333 case SWR:
334 case LWC1: 334 case LWC1:
335 case LDC1: 335 case LDC1:
336 case SWC1: 336 case SWC1:
337 case SDC1: 337 case SDC1:
338 return kImmediateType; 338 return kImmediateType;
339 // 26 bits immediate type instructions. eg: j imm26 339 // 26 bits immediate type instructions. eg: j imm26.
340 case J: 340 case J:
341 case JAL: 341 case JAL:
342 return kJumpType; 342 return kJumpType;
343 default: 343 default:
344 UNREACHABLE(); 344 UNREACHABLE();
345 }; 345 };
346 return kUnsupported; 346 return kUnsupported;
347 } 347 }
348 348
349 349
350 } } // namespace v8::internal 350 } } // namespace v8::internal
351 351
352 #endif // V8_TARGET_ARCH_MIPS 352 #endif // V8_TARGET_ARCH_MIPS
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698