| 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 are | 5 // modification, are permitted provided that the following conditions are |
| 6 // met: | 6 // 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 686 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 697 void instruction##q(P1 p1, P2 p2, P3 p3) { \ | 697 void instruction##q(P1 p1, P2 p2, P3 p3) { \ |
| 698 emit_##instruction(p1, p2, p3, kInt64Size); \ | 698 emit_##instruction(p1, p2, p3, kInt64Size); \ |
| 699 } | 699 } |
| 700 ASSEMBLER_INSTRUCTION_LIST(DECLARE_INSTRUCTION) | 700 ASSEMBLER_INSTRUCTION_LIST(DECLARE_INSTRUCTION) |
| 701 #undef DECLARE_INSTRUCTION | 701 #undef DECLARE_INSTRUCTION |
| 702 | 702 |
| 703 // Insert the smallest number of nop instructions | 703 // Insert the smallest number of nop instructions |
| 704 // possible to align the pc offset to a multiple | 704 // possible to align the pc offset to a multiple |
| 705 // of m, where m must be a power of 2. | 705 // of m, where m must be a power of 2. |
| 706 void Align(int m); | 706 void Align(int m); |
| 707 // Insert the smallest number of zero bytes possible to align the pc offset |
| 708 // to a mulitple of m. m must be a power of 2 (>= 2). |
| 709 void DataAlign(int m); |
| 707 void Nop(int bytes = 1); | 710 void Nop(int bytes = 1); |
| 708 // Aligns code to something that's optimal for a jump target for the platform. | 711 // Aligns code to something that's optimal for a jump target for the platform. |
| 709 void CodeTargetAlign(); | 712 void CodeTargetAlign(); |
| 710 | 713 |
| 711 // Stack | 714 // Stack |
| 712 void pushfq(); | 715 void pushfq(); |
| 713 void popfq(); | 716 void popfq(); |
| 714 | 717 |
| 715 void pushq(Immediate value); | 718 void pushq(Immediate value); |
| 716 // Push a 32 bit integer, and guarantee that it is actually pushed as a | 719 // Push a 32 bit integer, and guarantee that it is actually pushed as a |
| (...skipping 1439 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2156 private: | 2159 private: |
| 2157 Assembler* assembler_; | 2160 Assembler* assembler_; |
| 2158 #ifdef DEBUG | 2161 #ifdef DEBUG |
| 2159 int space_before_; | 2162 int space_before_; |
| 2160 #endif | 2163 #endif |
| 2161 }; | 2164 }; |
| 2162 | 2165 |
| 2163 } } // namespace v8::internal | 2166 } } // namespace v8::internal |
| 2164 | 2167 |
| 2165 #endif // V8_X64_ASSEMBLER_X64_H_ | 2168 #endif // V8_X64_ASSEMBLER_X64_H_ |
| OLD | NEW |