OLD | NEW |
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
2 // All Rights Reserved. | 2 // All Rights Reserved. |
3 // | 3 // |
4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
5 // modification, are permitted provided that the following conditions | 5 // modification, are permitted provided that the following conditions |
6 // are met: | 6 // are met: |
7 // | 7 // |
8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
10 // | 10 // |
(...skipping 774 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
785 static const int kDebugBreakSlotLength = | 785 static const int kDebugBreakSlotLength = |
786 kDebugBreakSlotInstructions * kInstrSize; | 786 kDebugBreakSlotInstructions * kInstrSize; |
787 | 787 |
788 // --------------------------------------------------------------------------- | 788 // --------------------------------------------------------------------------- |
789 // Code generation | 789 // Code generation |
790 | 790 |
791 // Insert the smallest number of nop instructions | 791 // Insert the smallest number of nop instructions |
792 // possible to align the pc offset to a multiple | 792 // possible to align the pc offset to a multiple |
793 // of m. m must be a power of 2 (>= 4). | 793 // of m. m must be a power of 2 (>= 4). |
794 void Align(int m); | 794 void Align(int m); |
| 795 // Insert the smallest number of zero bytes possible to align the pc offset |
| 796 // to a mulitple of m. m must be a power of 2 (>= 2). |
| 797 void DataAlign(int m); |
795 // Aligns code to something that's optimal for a jump target for the platform. | 798 // Aligns code to something that's optimal for a jump target for the platform. |
796 void CodeTargetAlign(); | 799 void CodeTargetAlign(); |
797 | 800 |
798 // Branch instructions | 801 // Branch instructions |
799 void b(int branch_offset, Condition cond = al); | 802 void b(int branch_offset, Condition cond = al); |
800 void bl(int branch_offset, Condition cond = al); | 803 void bl(int branch_offset, Condition cond = al); |
801 void blx(int branch_offset); // v5 and above | 804 void blx(int branch_offset); // v5 and above |
802 void blx(Register target, Condition cond = al); // v5 and above | 805 void blx(Register target, Condition cond = al); // v5 and above |
803 void bx(Register target, Condition cond = al); // v5 and above, plus v4t | 806 void bx(Register target, Condition cond = al); // v5 and above, plus v4t |
804 | 807 |
(...skipping 855 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1660 public: | 1663 public: |
1661 explicit EnsureSpace(Assembler* assembler) { | 1664 explicit EnsureSpace(Assembler* assembler) { |
1662 assembler->CheckBuffer(); | 1665 assembler->CheckBuffer(); |
1663 } | 1666 } |
1664 }; | 1667 }; |
1665 | 1668 |
1666 | 1669 |
1667 } } // namespace v8::internal | 1670 } } // namespace v8::internal |
1668 | 1671 |
1669 #endif // V8_ARM_ASSEMBLER_ARM_H_ | 1672 #endif // V8_ARM_ASSEMBLER_ARM_H_ |
OLD | NEW |