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 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
297 } | 297 } |
298 | 298 |
299 void LoadCondition(Expression* x, | 299 void LoadCondition(Expression* x, |
300 JumpTarget* true_target, | 300 JumpTarget* true_target, |
301 JumpTarget* false_target, | 301 JumpTarget* false_target, |
302 bool force_cc); | 302 bool force_cc); |
303 void Load(Expression* expr); | 303 void Load(Expression* expr); |
304 void LoadGlobal(); | 304 void LoadGlobal(); |
305 void LoadGlobalReceiver(Register scratch); | 305 void LoadGlobalReceiver(Register scratch); |
306 | 306 |
307 // Generate code to push the value of an expression on top of the frame | |
308 // and then spill the frame fully to memory. This function is used | |
309 // temporarily while the code generator is being transformed. | |
310 inline void LoadAndSpill(Expression* expression); | |
311 | |
312 // Call LoadCondition and then spill the virtual frame unless control flow | 307 // Call LoadCondition and then spill the virtual frame unless control flow |
313 // cannot reach the end of the expression (ie, by emitting only | 308 // cannot reach the end of the expression (ie, by emitting only |
314 // unconditional jumps to the control targets). | 309 // unconditional jumps to the control targets). |
315 inline void LoadConditionAndSpill(Expression* expression, | 310 inline void LoadConditionAndSpill(Expression* expression, |
316 JumpTarget* true_target, | 311 JumpTarget* true_target, |
317 JumpTarget* false_target, | 312 JumpTarget* false_target, |
318 bool force_control); | 313 bool force_control); |
319 | 314 |
320 // Read a value from a slot and leave it on top of the expression stack. | 315 // Read a value from a slot and leave it on top of the expression stack. |
321 void LoadFromSlot(Slot* slot, TypeofState typeof_state); | 316 void LoadFromSlot(Slot* slot, TypeofState typeof_state); |
(...skipping 607 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
929 return ObjectBits::encode(object_.code()) | | 924 return ObjectBits::encode(object_.code()) | |
930 OffsetBits::encode(offset_.code()) | | 925 OffsetBits::encode(offset_.code()) | |
931 ScratchBits::encode(scratch_.code()); | 926 ScratchBits::encode(scratch_.code()); |
932 } | 927 } |
933 }; | 928 }; |
934 | 929 |
935 | 930 |
936 } } // namespace v8::internal | 931 } } // namespace v8::internal |
937 | 932 |
938 #endif // V8_ARM_CODEGEN_ARM_H_ | 933 #endif // V8_ARM_CODEGEN_ARM_H_ |
OLD | NEW |