Chromium Code Reviews| 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 1705 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1716 // to the constant pool. These records are temporarily stored in a separate | 1716 // to the constant pool. These records are temporarily stored in a separate |
| 1717 // buffer until a constant pool is emitted. | 1717 // buffer until a constant pool is emitted. |
| 1718 // If every instruction in a long sequence is accessing the pool, we need one | 1718 // If every instruction in a long sequence is accessing the pool, we need one |
| 1719 // pending relocation entry per instruction. | 1719 // pending relocation entry per instruction. |
| 1720 | 1720 |
| 1721 // The buffers of pending constant pool entries. | 1721 // The buffers of pending constant pool entries. |
| 1722 std::vector<ConstantPoolEntry> pending_32_bit_constants_; | 1722 std::vector<ConstantPoolEntry> pending_32_bit_constants_; |
| 1723 std::vector<ConstantPoolEntry> pending_64_bit_constants_; | 1723 std::vector<ConstantPoolEntry> pending_64_bit_constants_; |
| 1724 | 1724 |
| 1725 private: | 1725 private: |
| 1726 // Avoid overflows for displacements etc. | |
| 1727 static const int kMaximalBufferSize = 512*MB; | |
|
ulan
2017/04/28 10:52:22
Nit: space around the operator: 512 * MB
Hannes Payer (out of office)
2017/04/28 11:08:58
Done.
| |
| 1728 | |
| 1726 int next_buffer_check_; // pc offset of next buffer check | 1729 int next_buffer_check_; // pc offset of next buffer check |
| 1727 | 1730 |
| 1728 // Constant pool generation | 1731 // Constant pool generation |
| 1729 // Pools are emitted in the instruction stream, preferably after unconditional | 1732 // Pools are emitted in the instruction stream, preferably after unconditional |
| 1730 // jumps or after returns from functions (in dead code locations). | 1733 // jumps or after returns from functions (in dead code locations). |
| 1731 // If a long code sequence does not contain unconditional jumps, it is | 1734 // If a long code sequence does not contain unconditional jumps, it is |
| 1732 // necessary to emit the constant pool before the pool gets too far from the | 1735 // necessary to emit the constant pool before the pool gets too far from the |
| 1733 // location it is accessed from. In this case, we emit a jump over the emitted | 1736 // location it is accessed from. In this case, we emit a jump over the emitted |
| 1734 // constant pool. | 1737 // constant pool. |
| 1735 // Constants in the pool may be addresses of functions that gets relocated; | 1738 // Constants in the pool may be addresses of functions that gets relocated; |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1802 | 1805 |
| 1803 void Emit(Address addr); | 1806 void Emit(Address addr); |
| 1804 void FlushICache(Isolate* isolate); | 1807 void FlushICache(Isolate* isolate); |
| 1805 }; | 1808 }; |
| 1806 | 1809 |
| 1807 | 1810 |
| 1808 } // namespace internal | 1811 } // namespace internal |
| 1809 } // namespace v8 | 1812 } // namespace v8 |
| 1810 | 1813 |
| 1811 #endif // V8_ARM_ASSEMBLER_ARM_H_ | 1814 #endif // V8_ARM_ASSEMBLER_ARM_H_ |
| OLD | NEW |