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 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
285 const Register r27 = {kRegister_r27_Code}; | 285 const Register r27 = {kRegister_r27_Code}; |
286 const Register r28 = {kRegister_r28_Code}; | 286 const Register r28 = {kRegister_r28_Code}; |
287 const Register r29 = {kRegister_r29_Code}; | 287 const Register r29 = {kRegister_r29_Code}; |
288 const Register r30 = {kRegister_r30_Code}; | 288 const Register r30 = {kRegister_r30_Code}; |
289 const Register fp = {kRegister_fp_Code}; | 289 const Register fp = {kRegister_fp_Code}; |
290 | 290 |
291 // Give alias names to registers | 291 // Give alias names to registers |
292 const Register cp = {kRegister_r30_Code}; // JavaScript context pointer | 292 const Register cp = {kRegister_r30_Code}; // JavaScript context pointer |
293 const Register kRootRegister = {kRegister_r29_Code}; // Roots array pointer. | 293 const Register kRootRegister = {kRegister_r29_Code}; // Roots array pointer. |
294 const Register kConstantPoolRegister = {kRegister_r28_Code}; // Constant pool | 294 const Register kConstantPoolRegister = {kRegister_r28_Code}; // Constant pool |
| 295 const Register kInterpreterBytecodeOffsetRegister = { |
| 296 kRegister_r14_Code // Interpreter bytecode offset. |
| 297 }; |
| 298 const Register kInterpreterBytecodeArrayRegister = { |
| 299 kRegister_r15_Code // Interpreter bytecode array pointer. |
| 300 }; |
| 301 const Register kInterpreterDispatchTableRegister = { |
| 302 kRegister_r16_Code // Interpreter dispatch table. |
| 303 }; |
295 | 304 |
296 // Double word FP register. | 305 // Double word FP register. |
297 struct DoubleRegister { | 306 struct DoubleRegister { |
298 static const int kNumRegisters = 32; | 307 static const int kNumRegisters = 32; |
299 static const int kMaxNumRegisters = kNumRegisters; | 308 static const int kMaxNumRegisters = kNumRegisters; |
300 static const int kNumVolatileRegisters = 14; // d0-d13 | 309 static const int kNumVolatileRegisters = 14; // d0-d13 |
301 static const int kSizeInBytes = 8; | 310 static const int kSizeInBytes = 8; |
302 | 311 |
303 static const int kAllocatableLowRangeBegin = 1; | 312 static const int kAllocatableLowRangeBegin = 1; |
304 static const int kAllocatableLowRangeEnd = 12; | 313 static const int kAllocatableLowRangeEnd = 12; |
(...skipping 1304 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1609 | 1618 |
1610 | 1619 |
1611 class EnsureSpace BASE_EMBEDDED { | 1620 class EnsureSpace BASE_EMBEDDED { |
1612 public: | 1621 public: |
1613 explicit EnsureSpace(Assembler* assembler) { assembler->CheckBuffer(); } | 1622 explicit EnsureSpace(Assembler* assembler) { assembler->CheckBuffer(); } |
1614 }; | 1623 }; |
1615 } | 1624 } |
1616 } // namespace v8::internal | 1625 } // namespace v8::internal |
1617 | 1626 |
1618 #endif // V8_PPC_ASSEMBLER_PPC_H_ | 1627 #endif // V8_PPC_ASSEMBLER_PPC_H_ |
OLD | NEW |