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_REGEXP_PPC_REGEXP_MACRO_ASSEMBLER_PPC_H_ | 5 #ifndef V8_REGEXP_PPC_REGEXP_MACRO_ASSEMBLER_PPC_H_ |
6 #define V8_REGEXP_PPC_REGEXP_MACRO_ASSEMBLER_PPC_H_ | 6 #define V8_REGEXP_PPC_REGEXP_MACRO_ASSEMBLER_PPC_H_ |
7 | 7 |
8 #include "src/macro-assembler.h" | 8 #include "src/macro-assembler.h" |
9 #include "src/ppc/assembler-ppc.h" | 9 #include "src/ppc/assembler-ppc.h" |
10 #include "src/ppc/frames-ppc.h" | 10 #include "src/ppc/frames-ppc.h" |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 // Offsets from frame_pointer() of function parameters and stored registers. | 89 // Offsets from frame_pointer() of function parameters and stored registers. |
90 static const int kFramePointer = 0; | 90 static const int kFramePointer = 0; |
91 | 91 |
92 // Above the frame pointer - Stored registers and stack passed parameters. | 92 // Above the frame pointer - Stored registers and stack passed parameters. |
93 // Register 25..31. | 93 // Register 25..31. |
94 static const int kStoredRegisters = kFramePointer; | 94 static const int kStoredRegisters = kFramePointer; |
95 // Return address (stored from link register, read into pc on return). | 95 // Return address (stored from link register, read into pc on return). |
96 static const int kReturnAddress = kStoredRegisters + 7 * kPointerSize; | 96 static const int kReturnAddress = kStoredRegisters + 7 * kPointerSize; |
97 static const int kCallerFrame = kReturnAddress + kPointerSize; | 97 static const int kCallerFrame = kReturnAddress + kPointerSize; |
98 // Stack parameters placed by caller. | 98 // Stack parameters placed by caller. |
99 static const int kIsolate = | 99 static const int kSecondaryReturnAddress = |
100 kCallerFrame + kStackFrameExtraParamSlot * kPointerSize; | 100 kCallerFrame + kStackFrameExtraParamSlot * kPointerSize; |
| 101 static const int kIsolate = kSecondaryReturnAddress + kPointerSize; |
101 | 102 |
102 // Below the frame pointer. | 103 // Below the frame pointer. |
103 // Register parameters stored by setup code. | 104 // Register parameters stored by setup code. |
104 static const int kDirectCall = kFramePointer - kPointerSize; | 105 static const int kDirectCall = kFramePointer - kPointerSize; |
105 static const int kStackHighEnd = kDirectCall - kPointerSize; | 106 static const int kStackHighEnd = kDirectCall - kPointerSize; |
106 static const int kNumOutputRegisters = kStackHighEnd - kPointerSize; | 107 static const int kNumOutputRegisters = kStackHighEnd - kPointerSize; |
107 static const int kRegisterOutput = kNumOutputRegisters - kPointerSize; | 108 static const int kRegisterOutput = kNumOutputRegisters - kPointerSize; |
108 static const int kInputEnd = kRegisterOutput - kPointerSize; | 109 static const int kInputEnd = kRegisterOutput - kPointerSize; |
109 static const int kInputStart = kInputEnd - kPointerSize; | 110 static const int kInputStart = kInputEnd - kPointerSize; |
110 static const int kStartIndex = kInputStart - kPointerSize; | 111 static const int kStartIndex = kInputStart - kPointerSize; |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
205 | 206 |
206 // Set of non-volatile registers saved/restored by generated regexp code. | 207 // Set of non-volatile registers saved/restored by generated regexp code. |
207 const RegList kRegExpCalleeSaved = | 208 const RegList kRegExpCalleeSaved = |
208 1 << 25 | 1 << 26 | 1 << 27 | 1 << 28 | 1 << 29 | 1 << 30 | 1 << 31; | 209 1 << 25 | 1 << 26 | 1 << 27 | 1 << 28 | 1 << 29 | 1 << 30 | 1 << 31; |
209 | 210 |
210 #endif // V8_INTERPRETED_REGEXP | 211 #endif // V8_INTERPRETED_REGEXP |
211 } // namespace internal | 212 } // namespace internal |
212 } // namespace v8 | 213 } // namespace v8 |
213 | 214 |
214 #endif // V8_REGEXP_PPC_REGEXP_MACRO_ASSEMBLER_PPC_H_ | 215 #endif // V8_REGEXP_PPC_REGEXP_MACRO_ASSEMBLER_PPC_H_ |
OLD | NEW |