| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 1236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1247 }; | 1247 }; |
| 1248 | 1248 |
| 1249 | 1249 |
| 1250 class LLoadGlobal: public LTemplateInstruction<1, 0, 0> { | 1250 class LLoadGlobal: public LTemplateInstruction<1, 0, 0> { |
| 1251 public: | 1251 public: |
| 1252 DECLARE_CONCRETE_INSTRUCTION(LoadGlobal, "load-global") | 1252 DECLARE_CONCRETE_INSTRUCTION(LoadGlobal, "load-global") |
| 1253 DECLARE_HYDROGEN_ACCESSOR(LoadGlobal) | 1253 DECLARE_HYDROGEN_ACCESSOR(LoadGlobal) |
| 1254 }; | 1254 }; |
| 1255 | 1255 |
| 1256 | 1256 |
| 1257 class LStoreGlobal: public LTemplateInstruction<0, 1, 0> { | 1257 class LStoreGlobal: public LTemplateInstruction<0, 1, 1> { |
| 1258 public: | 1258 public: |
| 1259 explicit LStoreGlobal(LOperand* value) { | 1259 LStoreGlobal(LOperand* value, LOperand* temp) { |
| 1260 inputs_[0] = value; | 1260 inputs_[0] = value; |
| 1261 temps_[0] = temp; |
| 1261 } | 1262 } |
| 1262 | 1263 |
| 1263 DECLARE_CONCRETE_INSTRUCTION(StoreGlobal, "store-global") | 1264 DECLARE_CONCRETE_INSTRUCTION(StoreGlobal, "store-global") |
| 1264 DECLARE_HYDROGEN_ACCESSOR(StoreGlobal) | 1265 DECLARE_HYDROGEN_ACCESSOR(StoreGlobal) |
| 1265 }; | 1266 }; |
| 1266 | 1267 |
| 1267 | 1268 |
| 1268 class LLoadContextSlot: public LTemplateInstruction<1, 0, 0> { | 1269 class LLoadContextSlot: public LTemplateInstruction<1, 0, 0> { |
| 1269 public: | 1270 public: |
| 1270 DECLARE_CONCRETE_INSTRUCTION(LoadContextSlot, "load-context-slot") | 1271 DECLARE_CONCRETE_INSTRUCTION(LoadContextSlot, "load-context-slot") |
| (...skipping 576 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1847 LChunkBuilder(HGraph* graph, LAllocator* allocator) | 1848 LChunkBuilder(HGraph* graph, LAllocator* allocator) |
| 1848 : chunk_(NULL), | 1849 : chunk_(NULL), |
| 1849 graph_(graph), | 1850 graph_(graph), |
| 1850 status_(UNUSED), | 1851 status_(UNUSED), |
| 1851 current_instruction_(NULL), | 1852 current_instruction_(NULL), |
| 1852 current_block_(NULL), | 1853 current_block_(NULL), |
| 1853 next_block_(NULL), | 1854 next_block_(NULL), |
| 1854 argument_count_(0), | 1855 argument_count_(0), |
| 1855 allocator_(allocator), | 1856 allocator_(allocator), |
| 1856 position_(RelocInfo::kNoPosition), | 1857 position_(RelocInfo::kNoPosition), |
| 1857 instructions_pending_deoptimization_environment_(NULL), | 1858 instruction_pending_deoptimization_environment_(NULL), |
| 1858 pending_deoptimization_ast_id_(AstNode::kNoNumber) { } | 1859 pending_deoptimization_ast_id_(AstNode::kNoNumber) { } |
| 1859 | 1860 |
| 1860 // Build the sequence for the graph. | 1861 // Build the sequence for the graph. |
| 1861 LChunk* Build(); | 1862 LChunk* Build(); |
| 1862 | 1863 |
| 1863 // Declare methods that deal with the individual node types. | 1864 // Declare methods that deal with the individual node types. |
| 1864 #define DECLARE_DO(type) LInstruction* Do##type(H##type* node); | 1865 #define DECLARE_DO(type) LInstruction* Do##type(H##type* node); |
| 1865 HYDROGEN_CONCRETE_INSTRUCTION_LIST(DECLARE_DO) | 1866 HYDROGEN_CONCRETE_INSTRUCTION_LIST(DECLARE_DO) |
| 1866 #undef DECLARE_DO | 1867 #undef DECLARE_DO |
| 1867 | 1868 |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1981 | 1982 |
| 1982 LChunk* chunk_; | 1983 LChunk* chunk_; |
| 1983 HGraph* const graph_; | 1984 HGraph* const graph_; |
| 1984 Status status_; | 1985 Status status_; |
| 1985 HInstruction* current_instruction_; | 1986 HInstruction* current_instruction_; |
| 1986 HBasicBlock* current_block_; | 1987 HBasicBlock* current_block_; |
| 1987 HBasicBlock* next_block_; | 1988 HBasicBlock* next_block_; |
| 1988 int argument_count_; | 1989 int argument_count_; |
| 1989 LAllocator* allocator_; | 1990 LAllocator* allocator_; |
| 1990 int position_; | 1991 int position_; |
| 1991 LInstruction* instructions_pending_deoptimization_environment_; | 1992 LInstruction* instruction_pending_deoptimization_environment_; |
| 1992 int pending_deoptimization_ast_id_; | 1993 int pending_deoptimization_ast_id_; |
| 1993 | 1994 |
| 1994 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 1995 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
| 1995 }; | 1996 }; |
| 1996 | 1997 |
| 1997 #undef DECLARE_HYDROGEN_ACCESSOR | 1998 #undef DECLARE_HYDROGEN_ACCESSOR |
| 1998 #undef DECLARE_INSTRUCTION | 1999 #undef DECLARE_INSTRUCTION |
| 1999 #undef DECLARE_CONCRETE_INSTRUCTION | 2000 #undef DECLARE_CONCRETE_INSTRUCTION |
| 2000 | 2001 |
| 2001 } } // namespace v8::internal | 2002 } } // namespace v8::internal |
| 2002 | 2003 |
| 2003 #endif // V8_ARM_LITHIUM_ARM_H_ | 2004 #endif // V8_ARM_LITHIUM_ARM_H_ |
| OLD | NEW |