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_ARM_MACRO_ASSEMBLER_ARM_H_ | 5 #ifndef V8_ARM_MACRO_ASSEMBLER_ARM_H_ |
6 #define V8_ARM_MACRO_ASSEMBLER_ARM_H_ | 6 #define V8_ARM_MACRO_ASSEMBLER_ARM_H_ |
7 | 7 |
8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
9 #include "src/bailout-reason.h" | 9 #include "src/bailout-reason.h" |
10 #include "src/frames.h" | 10 #include "src/frames.h" |
(...skipping 465 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
476 | 476 |
477 // If the value is a NaN, canonicalize the value else, do nothing. | 477 // If the value is a NaN, canonicalize the value else, do nothing. |
478 void VFPCanonicalizeNaN(const DwVfpRegister dst, | 478 void VFPCanonicalizeNaN(const DwVfpRegister dst, |
479 const DwVfpRegister src, | 479 const DwVfpRegister src, |
480 const Condition cond = al); | 480 const Condition cond = al); |
481 void VFPCanonicalizeNaN(const DwVfpRegister value, | 481 void VFPCanonicalizeNaN(const DwVfpRegister value, |
482 const Condition cond = al) { | 482 const Condition cond = al) { |
483 VFPCanonicalizeNaN(value, value, cond); | 483 VFPCanonicalizeNaN(value, value, cond); |
484 } | 484 } |
485 | 485 |
| 486 // Compare single values and move the result to the normal condition flags. |
| 487 void VFPCompareAndSetFlags(const SwVfpRegister src1, const SwVfpRegister src2, |
| 488 const Condition cond = al); |
| 489 void VFPCompareAndSetFlags(const SwVfpRegister src1, const float src2, |
| 490 const Condition cond = al); |
| 491 |
486 // Compare double values and move the result to the normal condition flags. | 492 // Compare double values and move the result to the normal condition flags. |
487 void VFPCompareAndSetFlags(const DwVfpRegister src1, | 493 void VFPCompareAndSetFlags(const DwVfpRegister src1, |
488 const DwVfpRegister src2, | 494 const DwVfpRegister src2, |
489 const Condition cond = al); | 495 const Condition cond = al); |
490 void VFPCompareAndSetFlags(const DwVfpRegister src1, | 496 void VFPCompareAndSetFlags(const DwVfpRegister src1, |
491 const double src2, | 497 const double src2, |
492 const Condition cond = al); | 498 const Condition cond = al); |
493 | 499 |
| 500 // Compare single values and then load the fpscr flags to a register. |
| 501 void VFPCompareAndLoadFlags(const SwVfpRegister src1, |
| 502 const SwVfpRegister src2, |
| 503 const Register fpscr_flags, |
| 504 const Condition cond = al); |
| 505 void VFPCompareAndLoadFlags(const SwVfpRegister src1, const float src2, |
| 506 const Register fpscr_flags, |
| 507 const Condition cond = al); |
| 508 |
494 // Compare double values and then load the fpscr flags to a register. | 509 // Compare double values and then load the fpscr flags to a register. |
495 void VFPCompareAndLoadFlags(const DwVfpRegister src1, | 510 void VFPCompareAndLoadFlags(const DwVfpRegister src1, |
496 const DwVfpRegister src2, | 511 const DwVfpRegister src2, |
497 const Register fpscr_flags, | 512 const Register fpscr_flags, |
498 const Condition cond = al); | 513 const Condition cond = al); |
499 void VFPCompareAndLoadFlags(const DwVfpRegister src1, | 514 void VFPCompareAndLoadFlags(const DwVfpRegister src1, |
500 const double src2, | 515 const double src2, |
501 const Register fpscr_flags, | 516 const Register fpscr_flags, |
502 const Condition cond = al); | 517 const Condition cond = al); |
503 | 518 |
(...skipping 1034 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1538 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1553 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
1539 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1554 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
1540 #else | 1555 #else |
1541 #define ACCESS_MASM(masm) masm-> | 1556 #define ACCESS_MASM(masm) masm-> |
1542 #endif | 1557 #endif |
1543 | 1558 |
1544 | 1559 |
1545 } } // namespace v8::internal | 1560 } } // namespace v8::internal |
1546 | 1561 |
1547 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_ | 1562 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_ |
OLD | NEW |