OLD | NEW |
---|---|
1 // Copyright 2010 the V8 project authors. All rights reserved. | 1 // Copyright 2010 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 |
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
275 // If the name is an inline runtime function call return the number of | 275 // If the name is an inline runtime function call return the number of |
276 // expected arguments. Otherwise return -1. | 276 // expected arguments. Otherwise return -1. |
277 static int InlineRuntimeCallArgumentsCount(Handle<String> name); | 277 static int InlineRuntimeCallArgumentsCount(Handle<String> name); |
278 | 278 |
279 // Constants related to patching of inlined load/store. | 279 // Constants related to patching of inlined load/store. |
280 static int GetInlinedKeyedLoadInstructionsAfterPatch() { | 280 static int GetInlinedKeyedLoadInstructionsAfterPatch() { |
281 return FLAG_debug_code ? 27 : 13; | 281 return FLAG_debug_code ? 27 : 13; |
282 } | 282 } |
283 static const int kInlinedKeyedStoreInstructionsAfterPatch = 5; | 283 static const int kInlinedKeyedStoreInstructionsAfterPatch = 5; |
284 static int GetInlinedNamedStoreInstructionsAfterPatch() { | 284 static int GetInlinedNamedStoreInstructionsAfterPatch() { |
285 return FLAG_debug_code ? 33 : 14; | 285 ASSERT(inlined_write_barrier_size_ != -1); |
286 return inlined_write_barrier_size_ + 4; | |
286 } | 287 } |
287 | 288 |
288 private: | 289 private: |
289 // Construction/Destruction | 290 // Construction/Destruction |
290 explicit CodeGenerator(MacroAssembler* masm); | 291 explicit CodeGenerator(MacroAssembler* masm); |
291 | 292 |
292 // Accessors | 293 // Accessors |
293 inline bool is_eval(); | 294 inline bool is_eval(); |
294 inline Scope* scope(); | 295 inline Scope* scope(); |
295 | 296 |
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
582 Vector<TypeInfo>* type_info_; | 583 Vector<TypeInfo>* type_info_; |
583 | 584 |
584 // Jump targets | 585 // Jump targets |
585 BreakTarget function_return_; | 586 BreakTarget function_return_; |
586 | 587 |
587 // True if the function return is shadowed (ie, jumping to the target | 588 // True if the function return is shadowed (ie, jumping to the target |
588 // function_return_ does not jump to the true function return, but rather | 589 // function_return_ does not jump to the true function return, but rather |
589 // to some unlinking code). | 590 // to some unlinking code). |
590 bool function_return_is_shadowed_; | 591 bool function_return_is_shadowed_; |
591 | 592 |
593 // Size of inlined write barriers. | |
594 static int inlined_write_barrier_size_; | |
Vyacheslav Egorov (Chromium)
2010/07/23 08:44:24
Might me reasonable to add name of method used to
Mads Ager (chromium)
2010/07/23 08:47:24
Done.
| |
595 | |
592 static InlineRuntimeLUT kInlineRuntimeLUT[]; | 596 static InlineRuntimeLUT kInlineRuntimeLUT[]; |
593 | 597 |
594 friend class VirtualFrame; | 598 friend class VirtualFrame; |
595 friend class JumpTarget; | 599 friend class JumpTarget; |
596 friend class Reference; | 600 friend class Reference; |
597 friend class FastCodeGenerator; | 601 friend class FastCodeGenerator; |
598 friend class FullCodeGenerator; | 602 friend class FullCodeGenerator; |
599 friend class FullCodeGenSyntaxChecker; | 603 friend class FullCodeGenSyntaxChecker; |
600 | 604 |
601 DISALLOW_COPY_AND_ASSIGN(CodeGenerator); | 605 DISALLOW_COPY_AND_ASSIGN(CodeGenerator); |
(...skipping 487 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1089 return ObjectBits::encode(object_.code()) | | 1093 return ObjectBits::encode(object_.code()) | |
1090 OffsetBits::encode(offset_.code()) | | 1094 OffsetBits::encode(offset_.code()) | |
1091 ScratchBits::encode(scratch_.code()); | 1095 ScratchBits::encode(scratch_.code()); |
1092 } | 1096 } |
1093 }; | 1097 }; |
1094 | 1098 |
1095 | 1099 |
1096 } } // namespace v8::internal | 1100 } } // namespace v8::internal |
1097 | 1101 |
1098 #endif // V8_ARM_CODEGEN_ARM_H_ | 1102 #endif // V8_ARM_CODEGEN_ARM_H_ |
OLD | NEW |