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 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
208 } else { | 208 } else { |
209 pos_ = pos + 1; | 209 pos_ = pos + 1; |
210 ASSERT(is_linked()); | 210 ASSERT(is_linked()); |
211 } | 211 } |
212 } | 212 } |
213 | 213 |
214 friend class Assembler; | 214 friend class Assembler; |
215 friend class Displacement; | 215 friend class Displacement; |
216 friend class RegExpMacroAssemblerIrregexp; | 216 friend class RegExpMacroAssemblerIrregexp; |
217 | 217 |
218 #if V8_TARGET_ARCH_A64 | 218 #if V8_TARGET_ARCH_ARM64 |
219 // On A64, the Assembler keeps track of pointers to Labels to resolve branches | 219 // On ARM64, the Assembler keeps track of pointers to Labels to resolve |
220 // to distant targets. Copying labels would confuse the Assembler. | 220 // branches to distant targets. Copying labels would confuse the Assembler. |
221 DISALLOW_COPY_AND_ASSIGN(Label); // NOLINT | 221 DISALLOW_COPY_AND_ASSIGN(Label); // NOLINT |
222 #endif | 222 #endif |
223 }; | 223 }; |
224 | 224 |
225 | 225 |
226 enum SaveFPRegsMode { kDontSaveFPRegs, kSaveFPRegs }; | 226 enum SaveFPRegsMode { kDontSaveFPRegs, kSaveFPRegs }; |
227 | 227 |
228 | 228 |
229 // ----------------------------------------------------------------------------- | 229 // ----------------------------------------------------------------------------- |
230 // Relocation information | 230 // Relocation information |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
279 // Everything after runtime_entry (inclusive) is not GC'ed. | 279 // Everything after runtime_entry (inclusive) is not GC'ed. |
280 RUNTIME_ENTRY, | 280 RUNTIME_ENTRY, |
281 JS_RETURN, // Marks start of the ExitJSFrame code. | 281 JS_RETURN, // Marks start of the ExitJSFrame code. |
282 COMMENT, | 282 COMMENT, |
283 POSITION, // See comment for kNoPosition above. | 283 POSITION, // See comment for kNoPosition above. |
284 STATEMENT_POSITION, // See comment for kNoPosition above. | 284 STATEMENT_POSITION, // See comment for kNoPosition above. |
285 DEBUG_BREAK_SLOT, // Additional code inserted for debug break slot. | 285 DEBUG_BREAK_SLOT, // Additional code inserted for debug break slot. |
286 EXTERNAL_REFERENCE, // The address of an external C++ function. | 286 EXTERNAL_REFERENCE, // The address of an external C++ function. |
287 INTERNAL_REFERENCE, // An address inside the same function. | 287 INTERNAL_REFERENCE, // An address inside the same function. |
288 | 288 |
289 // Marks constant and veneer pools. Only used on ARM and A64. | 289 // Marks constant and veneer pools. Only used on ARM and ARM64. |
290 // They use a custom noncompact encoding. | 290 // They use a custom noncompact encoding. |
291 CONST_POOL, | 291 CONST_POOL, |
292 VENEER_POOL, | 292 VENEER_POOL, |
293 | 293 |
294 // add more as needed | 294 // add more as needed |
295 // Pseudo-types | 295 // Pseudo-types |
296 NUMBER_OF_MODES, // There are at most 15 modes with noncompact encoding. | 296 NUMBER_OF_MODES, // There are at most 15 modes with noncompact encoding. |
297 NONE32, // never recorded 32-bit value | 297 NONE32, // never recorded 32-bit value |
298 NONE64, // never recorded 64-bit value | 298 NONE64, // never recorded 64-bit value |
299 CODE_AGE_SEQUENCE, // Not stored in RelocInfo array, used explictly by | 299 CODE_AGE_SEQUENCE, // Not stored in RelocInfo array, used explictly by |
(...skipping 781 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1081 | 1081 |
1082 private: | 1082 private: |
1083 int32_t multiplier_; | 1083 int32_t multiplier_; |
1084 int32_t shift_; | 1084 int32_t shift_; |
1085 }; | 1085 }; |
1086 | 1086 |
1087 | 1087 |
1088 } } // namespace v8::internal | 1088 } } // namespace v8::internal |
1089 | 1089 |
1090 #endif // V8_ASSEMBLER_H_ | 1090 #endif // V8_ASSEMBLER_H_ |
OLD | NEW |