OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_PPC_MACRO_ASSEMBLER_PPC_H_ | 5 #ifndef V8_PPC_MACRO_ASSEMBLER_PPC_H_ |
6 #define V8_PPC_MACRO_ASSEMBLER_PPC_H_ | 6 #define V8_PPC_MACRO_ASSEMBLER_PPC_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 397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
408 #if V8_TARGET_ARCH_PPC64 | 408 #if V8_TARGET_ARCH_PPC64 |
409 // Converts the double_input to an unsigned integer. Note that, upon return, | 409 // Converts the double_input to an unsigned integer. Note that, upon return, |
410 // the contents of double_dst will also hold the fixed point representation. | 410 // the contents of double_dst will also hold the fixed point representation. |
411 void ConvertDoubleToUnsignedInt64( | 411 void ConvertDoubleToUnsignedInt64( |
412 const DoubleRegister double_input, const Register dst, | 412 const DoubleRegister double_input, const Register dst, |
413 const DoubleRegister double_dst, | 413 const DoubleRegister double_dst, |
414 FPRoundingMode rounding_mode = kRoundToZero); | 414 FPRoundingMode rounding_mode = kRoundToZero); |
415 #endif | 415 #endif |
416 | 416 |
417 #if !V8_TARGET_ARCH_PPC64 | 417 #if !V8_TARGET_ARCH_PPC64 |
418 void PairShiftLeft(Register dst_low, Register dst_high, Register src_low, | 418 void ShiftLeftPair(Register dst_low, Register dst_high, Register src_low, |
419 Register src_high, Register scratch, Register shift); | 419 Register src_high, Register scratch, Register shift); |
420 void PairShiftLeft(Register dst_low, Register dst_high, Register src_low, | 420 void ShiftLeftPair(Register dst_low, Register dst_high, Register src_low, |
421 Register src_high, uint32_t shift); | 421 Register src_high, uint32_t shift); |
| 422 void ShiftRightPair(Register dst_low, Register dst_high, Register src_low, |
| 423 Register src_high, Register scratch, Register shift); |
| 424 void ShiftRightPair(Register dst_low, Register dst_high, Register src_low, |
| 425 Register src_high, uint32_t shift); |
| 426 void ShiftRightAlgPair(Register dst_low, Register dst_high, Register src_low, |
| 427 Register src_high, Register scratch, Register shift); |
| 428 void ShiftRightAlgPair(Register dst_low, Register dst_high, Register src_low, |
| 429 Register src_high, uint32_t shift); |
422 #endif | 430 #endif |
423 | 431 |
424 // Generates function and stub prologue code. | 432 // Generates function and stub prologue code. |
425 void StubPrologue(StackFrame::Type type, Register base = no_reg, | 433 void StubPrologue(StackFrame::Type type, Register base = no_reg, |
426 int prologue_offset = 0); | 434 int prologue_offset = 0); |
427 void Prologue(bool code_pre_aging, Register base, int prologue_offset = 0); | 435 void Prologue(bool code_pre_aging, Register base, int prologue_offset = 0); |
428 | 436 |
429 // Enter exit frame. | 437 // Enter exit frame. |
430 // stack_space - extra stack space, used for parameters before call to C. | 438 // stack_space - extra stack space, used for parameters before call to C. |
431 // At least one slot (for the return address) should be provided. | 439 // At least one slot (for the return address) should be provided. |
(...skipping 1193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1625 #define ACCESS_MASM(masm) \ | 1633 #define ACCESS_MASM(masm) \ |
1626 masm->stop(__FILE_LINE__); \ | 1634 masm->stop(__FILE_LINE__); \ |
1627 masm-> | 1635 masm-> |
1628 #else | 1636 #else |
1629 #define ACCESS_MASM(masm) masm-> | 1637 #define ACCESS_MASM(masm) masm-> |
1630 #endif | 1638 #endif |
1631 } // namespace internal | 1639 } // namespace internal |
1632 } // namespace v8 | 1640 } // namespace v8 |
1633 | 1641 |
1634 #endif // V8_PPC_MACRO_ASSEMBLER_PPC_H_ | 1642 #endif // V8_PPC_MACRO_ASSEMBLER_PPC_H_ |
OLD | NEW |