OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
11 // with the distribution. | 11 // with the distribution. |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 static const int kFramePointer = 0; | 130 static const int kFramePointer = 0; |
131 | 131 |
132 // Above the frame pointer - Stored registers and stack passed parameters. | 132 // Above the frame pointer - Stored registers and stack passed parameters. |
133 // Register 4..11. | 133 // Register 4..11. |
134 static const int kStoredRegisters = kFramePointer; | 134 static const int kStoredRegisters = kFramePointer; |
135 // Return address (stored from link register, read into pc on return). | 135 // Return address (stored from link register, read into pc on return). |
136 static const int kReturnAddress = kStoredRegisters + 8 * kPointerSize; | 136 static const int kReturnAddress = kStoredRegisters + 8 * kPointerSize; |
137 static const int kSecondaryReturnAddress = kReturnAddress + kPointerSize; | 137 static const int kSecondaryReturnAddress = kReturnAddress + kPointerSize; |
138 // Stack parameters placed by caller. | 138 // Stack parameters placed by caller. |
139 static const int kRegisterOutput = kSecondaryReturnAddress + kPointerSize; | 139 static const int kRegisterOutput = kSecondaryReturnAddress + kPointerSize; |
140 static const int kStackHighEnd = kRegisterOutput + kPointerSize; | 140 static const int kNumOutputRegisters = kRegisterOutput + kPointerSize; |
| 141 static const int kStackHighEnd = kNumOutputRegisters + kPointerSize; |
141 static const int kDirectCall = kStackHighEnd + kPointerSize; | 142 static const int kDirectCall = kStackHighEnd + kPointerSize; |
142 static const int kIsolate = kDirectCall + kPointerSize; | 143 static const int kIsolate = kDirectCall + kPointerSize; |
143 | 144 |
144 // Below the frame pointer. | 145 // Below the frame pointer. |
145 // Register parameters stored by setup code. | 146 // Register parameters stored by setup code. |
146 static const int kInputEnd = kFramePointer - kPointerSize; | 147 static const int kInputEnd = kFramePointer - kPointerSize; |
147 static const int kInputStart = kInputEnd - kPointerSize; | 148 static const int kInputStart = kInputEnd - kPointerSize; |
148 static const int kStartIndex = kInputStart - kPointerSize; | 149 static const int kStartIndex = kInputStart - kPointerSize; |
149 static const int kInputString = kStartIndex - kPointerSize; | 150 static const int kInputString = kStartIndex - kPointerSize; |
150 // When adding local variables remember to push space for them in | 151 // When adding local variables remember to push space for them in |
151 // the frame in GetCode. | 152 // the frame in GetCode. |
152 static const int kInputStartMinusOne = kInputString - kPointerSize; | 153 static const int kSuccessfulCaptures = kInputString - kPointerSize; |
| 154 static const int kInputStartMinusOne = kSuccessfulCaptures - kPointerSize; |
153 static const int kAtStart = kInputStartMinusOne - kPointerSize; | 155 static const int kAtStart = kInputStartMinusOne - kPointerSize; |
154 // First register address. Following registers are below it on the stack. | 156 // First register address. Following registers are below it on the stack. |
155 static const int kRegisterZero = kAtStart - kPointerSize; | 157 static const int kRegisterZero = kAtStart - kPointerSize; |
156 | 158 |
157 // Initial size of code buffer. | 159 // Initial size of code buffer. |
158 static const size_t kRegExpCodeSize = 1024; | 160 static const size_t kRegExpCodeSize = 1024; |
159 | 161 |
160 static const int kBacktrackConstantPoolSize = 4; | 162 static const int kBacktrackConstantPoolSize = 4; |
161 | 163 |
162 // Load a number of characters at the given offset from the | 164 // Load a number of characters at the given offset from the |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
256 Label check_preempt_label_; | 258 Label check_preempt_label_; |
257 Label stack_overflow_label_; | 259 Label stack_overflow_label_; |
258 }; | 260 }; |
259 | 261 |
260 #endif // V8_INTERPRETED_REGEXP | 262 #endif // V8_INTERPRETED_REGEXP |
261 | 263 |
262 | 264 |
263 }} // namespace v8::internal | 265 }} // namespace v8::internal |
264 | 266 |
265 #endif // V8_ARM_REGEXP_MACRO_ASSEMBLER_ARM_H_ | 267 #endif // V8_ARM_REGEXP_MACRO_ASSEMBLER_ARM_H_ |
OLD | NEW |