OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_MIPS_CONSTANTS_H_ | 5 #ifndef V8_MIPS_CONSTANTS_H_ |
6 #define V8_MIPS_CONSTANTS_H_ | 6 #define V8_MIPS_CONSTANTS_H_ |
7 #include "src/globals.h" | 7 #include "src/globals.h" |
8 // UNIMPLEMENTED_ macro for MIPS. | 8 // UNIMPLEMENTED_ macro for MIPS. |
9 #ifdef DEBUG | 9 #ifdef DEBUG |
10 #define UNIMPLEMENTED_MIPS() \ | 10 #define UNIMPLEMENTED_MIPS() \ |
(...skipping 439 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
450 MTC1 = ((0 << 3) + 4) << 21, | 450 MTC1 = ((0 << 3) + 4) << 21, |
451 CTC1 = ((0 << 3) + 6) << 21, | 451 CTC1 = ((0 << 3) + 6) << 21, |
452 MTHC1 = ((0 << 3) + 7) << 21, | 452 MTHC1 = ((0 << 3) + 7) << 21, |
453 BC1 = ((1 << 3) + 0) << 21, | 453 BC1 = ((1 << 3) + 0) << 21, |
454 S = ((2 << 3) + 0) << 21, | 454 S = ((2 << 3) + 0) << 21, |
455 D = ((2 << 3) + 1) << 21, | 455 D = ((2 << 3) + 1) << 21, |
456 W = ((2 << 3) + 4) << 21, | 456 W = ((2 << 3) + 4) << 21, |
457 L = ((2 << 3) + 5) << 21, | 457 L = ((2 << 3) + 5) << 21, |
458 PS = ((2 << 3) + 6) << 21, | 458 PS = ((2 << 3) + 6) << 21, |
459 // COP1 Encoding of Function Field When rs=S. | 459 // COP1 Encoding of Function Field When rs=S. |
460 ADD_S = ((0 << 3) + 0), | |
461 SUB_S = ((0 << 3) + 1), | |
462 MUL_S = ((0 << 3) + 2), | |
463 DIV_S = ((0 << 3) + 3), | |
464 ABS_S = ((0 << 3) + 5), | |
465 SQRT_S = ((0 << 3) + 4), | |
466 MOV_S = ((0 << 3) + 6), | |
467 NEG_S = ((0 << 3) + 7), | |
468 ROUND_L_S = ((1 << 3) + 0), | 460 ROUND_L_S = ((1 << 3) + 0), |
469 TRUNC_L_S = ((1 << 3) + 1), | 461 TRUNC_L_S = ((1 << 3) + 1), |
470 CEIL_L_S = ((1 << 3) + 2), | 462 CEIL_L_S = ((1 << 3) + 2), |
471 FLOOR_L_S = ((1 << 3) + 3), | 463 FLOOR_L_S = ((1 << 3) + 3), |
472 ROUND_W_S = ((1 << 3) + 4), | 464 ROUND_W_S = ((1 << 3) + 4), |
473 TRUNC_W_S = ((1 << 3) + 5), | 465 TRUNC_W_S = ((1 << 3) + 5), |
474 CEIL_W_S = ((1 << 3) + 6), | 466 CEIL_W_S = ((1 << 3) + 6), |
475 FLOOR_W_S = ((1 << 3) + 7), | 467 FLOOR_W_S = ((1 << 3) + 7), |
476 RECIP_S = ((2 << 3) + 5), | |
477 RSQRT_S = ((2 << 3) + 6), | |
478 CVT_D_S = ((4 << 3) + 1), | 468 CVT_D_S = ((4 << 3) + 1), |
479 CVT_W_S = ((4 << 3) + 4), | 469 CVT_W_S = ((4 << 3) + 4), |
480 CVT_L_S = ((4 << 3) + 5), | 470 CVT_L_S = ((4 << 3) + 5), |
481 CVT_PS_S = ((4 << 3) + 6), | 471 CVT_PS_S = ((4 << 3) + 6), |
482 // COP1 Encoding of Function Field When rs=D. | 472 // COP1 Encoding of Function Field When rs=D. |
483 ADD_D = ((0 << 3) + 0), | 473 ADD_D = ((0 << 3) + 0), |
484 SUB_D = ((0 << 3) + 1), | 474 SUB_D = ((0 << 3) + 1), |
485 MUL_D = ((0 << 3) + 2), | 475 MUL_D = ((0 << 3) + 2), |
486 DIV_D = ((0 << 3) + 3), | 476 DIV_D = ((0 << 3) + 3), |
487 SQRT_D = ((0 << 3) + 4), | 477 SQRT_D = ((0 << 3) + 4), |
488 ABS_D = ((0 << 3) + 5), | 478 ABS_D = ((0 << 3) + 5), |
489 MOV_D = ((0 << 3) + 6), | 479 MOV_D = ((0 << 3) + 6), |
490 NEG_D = ((0 << 3) + 7), | 480 NEG_D = ((0 << 3) + 7), |
491 ROUND_L_D = ((1 << 3) + 0), | 481 ROUND_L_D = ((1 << 3) + 0), |
492 TRUNC_L_D = ((1 << 3) + 1), | 482 TRUNC_L_D = ((1 << 3) + 1), |
493 CEIL_L_D = ((1 << 3) + 2), | 483 CEIL_L_D = ((1 << 3) + 2), |
494 FLOOR_L_D = ((1 << 3) + 3), | 484 FLOOR_L_D = ((1 << 3) + 3), |
495 ROUND_W_D = ((1 << 3) + 4), | 485 ROUND_W_D = ((1 << 3) + 4), |
496 TRUNC_W_D = ((1 << 3) + 5), | 486 TRUNC_W_D = ((1 << 3) + 5), |
497 CEIL_W_D = ((1 << 3) + 6), | 487 CEIL_W_D = ((1 << 3) + 6), |
498 FLOOR_W_D = ((1 << 3) + 7), | 488 FLOOR_W_D = ((1 << 3) + 7), |
499 RECIP_D = ((2 << 3) + 5), | 489 MIN = ((3 << 3) + 4), |
500 RSQRT_D = ((2 << 3) + 6), | 490 MINA = ((3 << 3) + 5), |
| 491 MAX = ((3 << 3) + 6), |
| 492 MAXA = ((3 << 3) + 7), |
501 CVT_S_D = ((4 << 3) + 0), | 493 CVT_S_D = ((4 << 3) + 0), |
502 CVT_W_D = ((4 << 3) + 4), | 494 CVT_W_D = ((4 << 3) + 4), |
503 CVT_L_D = ((4 << 3) + 5), | 495 CVT_L_D = ((4 << 3) + 5), |
504 C_F_D = ((6 << 3) + 0), | 496 C_F_D = ((6 << 3) + 0), |
505 C_UN_D = ((6 << 3) + 1), | 497 C_UN_D = ((6 << 3) + 1), |
506 C_EQ_D = ((6 << 3) + 2), | 498 C_EQ_D = ((6 << 3) + 2), |
507 C_UEQ_D = ((6 << 3) + 3), | 499 C_UEQ_D = ((6 << 3) + 3), |
508 C_OLT_D = ((6 << 3) + 4), | 500 C_OLT_D = ((6 << 3) + 4), |
509 C_ULT_D = ((6 << 3) + 5), | 501 C_ULT_D = ((6 << 3) + 5), |
510 C_OLE_D = ((6 << 3) + 6), | 502 C_OLE_D = ((6 << 3) + 6), |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
544 CMP_OGT = ((2 << 3) + 7), // Reserved, not implemented. | 536 CMP_OGT = ((2 << 3) + 7), // Reserved, not implemented. |
545 CMP_SAT = ((3 << 3) + 0), // Reserved, not implemented. | 537 CMP_SAT = ((3 << 3) + 0), // Reserved, not implemented. |
546 CMP_SOR = ((3 << 3) + 1), | 538 CMP_SOR = ((3 << 3) + 1), |
547 CMP_SUNE = ((3 << 3) + 2), | 539 CMP_SUNE = ((3 << 3) + 2), |
548 CMP_SNE = ((3 << 3) + 3), | 540 CMP_SNE = ((3 << 3) + 3), |
549 CMP_SUGE = ((3 << 3) + 4), // Reserved, not implemented. | 541 CMP_SUGE = ((3 << 3) + 4), // Reserved, not implemented. |
550 CMP_SOGE = ((3 << 3) + 5), // Reserved, not implemented. | 542 CMP_SOGE = ((3 << 3) + 5), // Reserved, not implemented. |
551 CMP_SUGT = ((3 << 3) + 6), // Reserved, not implemented. | 543 CMP_SUGT = ((3 << 3) + 6), // Reserved, not implemented. |
552 CMP_SOGT = ((3 << 3) + 7), // Reserved, not implemented. | 544 CMP_SOGT = ((3 << 3) + 7), // Reserved, not implemented. |
553 | 545 |
554 MIN = ((3 << 3) + 4), | |
555 MINA = ((3 << 3) + 5), | |
556 MAX = ((3 << 3) + 6), | |
557 MAXA = ((3 << 3) + 7), | |
558 SEL = ((2 << 3) + 0), | 546 SEL = ((2 << 3) + 0), |
559 MOVZ_C = ((2 << 3) + 2), | |
560 MOVN_C = ((2 << 3) + 3), | |
561 SELEQZ_C = ((2 << 3) + 4), // COP1 on FPR registers. | 547 SELEQZ_C = ((2 << 3) + 4), // COP1 on FPR registers. |
562 MOVF = ((2 << 3) + 1), // Function field for MOVT.fmt and MOVF.fmt | |
563 SELNEZ_C = ((2 << 3) + 7), // COP1 on FPR registers. | 548 SELNEZ_C = ((2 << 3) + 7), // COP1 on FPR registers. |
564 // COP1 Encoding of Function Field When rs=PS. | 549 // COP1 Encoding of Function Field When rs=PS. |
565 // COP1X Encoding of Function Field. | 550 // COP1X Encoding of Function Field. |
566 MADD_D = ((4 << 3) + 1), | 551 MADD_D = ((4 << 3) + 1), |
567 | 552 |
568 NULLSF = 0 | 553 NULLSF = 0 |
569 }; | 554 }; |
570 | 555 |
571 | 556 |
572 // ----- Emulated conditions. | 557 // ----- Emulated conditions. |
(...skipping 408 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
981 // JS argument slots size. | 966 // JS argument slots size. |
982 const int kJSArgsSlotsSize = 0 * Instruction::kInstrSize; | 967 const int kJSArgsSlotsSize = 0 * Instruction::kInstrSize; |
983 // Assembly builtins argument slots size. | 968 // Assembly builtins argument slots size. |
984 const int kBArgsSlotsSize = 0 * Instruction::kInstrSize; | 969 const int kBArgsSlotsSize = 0 * Instruction::kInstrSize; |
985 | 970 |
986 const int kBranchReturnOffset = 2 * Instruction::kInstrSize; | 971 const int kBranchReturnOffset = 2 * Instruction::kInstrSize; |
987 | 972 |
988 } } // namespace v8::internal | 973 } } // namespace v8::internal |
989 | 974 |
990 #endif // #ifndef V8_MIPS_CONSTANTS_H_ | 975 #endif // #ifndef V8_MIPS_CONSTANTS_H_ |
OLD | NEW |