| 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 1372 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1383 | 1383 |
| 1384 virtual void PrintDataTo(StringStream* stream) const; | 1384 virtual void PrintDataTo(StringStream* stream) const; |
| 1385 | 1385 |
| 1386 Handle<String> name() const {return hydrogen()->name(); } | 1386 Handle<String> name() const {return hydrogen()->name(); } |
| 1387 int arity() const { return hydrogen()->argument_count() - 1; } | 1387 int arity() const { return hydrogen()->argument_count() - 1; } |
| 1388 }; | 1388 }; |
| 1389 | 1389 |
| 1390 | 1390 |
| 1391 class LCallKnownGlobal: public LInstruction { | 1391 class LCallKnownGlobal: public LInstruction { |
| 1392 public: | 1392 public: |
| 1393 explicit LCallKnownGlobal(LOperand* receiver) : LUnaryOperation(receiver) { } |
| 1394 |
| 1393 DECLARE_CONCRETE_INSTRUCTION(CallKnownGlobal, "call-known-global") | 1395 DECLARE_CONCRETE_INSTRUCTION(CallKnownGlobal, "call-known-global") |
| 1394 DECLARE_HYDROGEN_ACCESSOR(CallKnownGlobal) | 1396 DECLARE_HYDROGEN_ACCESSOR(CallKnownGlobal) |
| 1395 | 1397 |
| 1396 virtual void PrintDataTo(StringStream* stream) const; | 1398 virtual void PrintDataTo(StringStream* stream) const; |
| 1397 | 1399 |
| 1398 Handle<JSFunction> target() const { return hydrogen()->target(); } | 1400 Handle<JSFunction> target() const { return hydrogen()->target(); } |
| 1399 int arity() const { return hydrogen()->argument_count() - 1; } | 1401 int arity() const { return hydrogen()->argument_count() - 1; } |
| 1400 }; | 1402 }; |
| 1401 | 1403 |
| 1402 | 1404 |
| (...skipping 681 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2084 void VisitInstruction(HInstruction* current); | 2086 void VisitInstruction(HInstruction* current); |
| 2085 | 2087 |
| 2086 void DoBasicBlock(HBasicBlock* block, HBasicBlock* next_block); | 2088 void DoBasicBlock(HBasicBlock* block, HBasicBlock* next_block); |
| 2087 LInstruction* DoBit(Token::Value op, HBitwiseBinaryOperation* instr); | 2089 LInstruction* DoBit(Token::Value op, HBitwiseBinaryOperation* instr); |
| 2088 LInstruction* DoShift(Token::Value op, HBitwiseBinaryOperation* instr); | 2090 LInstruction* DoShift(Token::Value op, HBitwiseBinaryOperation* instr); |
| 2089 LInstruction* DoArithmeticD(Token::Value op, | 2091 LInstruction* DoArithmeticD(Token::Value op, |
| 2090 HArithmeticBinaryOperation* instr); | 2092 HArithmeticBinaryOperation* instr); |
| 2091 LInstruction* DoArithmeticT(Token::Value op, | 2093 LInstruction* DoArithmeticT(Token::Value op, |
| 2092 HArithmeticBinaryOperation* instr); | 2094 HArithmeticBinaryOperation* instr); |
| 2093 | 2095 |
| 2096 void DecrementArgumentCount(int amount) { |
| 2097 ASSERT(amount <= argument_count_); |
| 2098 argument_count_ -= amount; |
| 2099 } |
| 2100 |
| 2094 LChunk* chunk_; | 2101 LChunk* chunk_; |
| 2095 HGraph* const graph_; | 2102 HGraph* const graph_; |
| 2096 Status status_; | 2103 Status status_; |
| 2097 HInstruction* current_instruction_; | 2104 HInstruction* current_instruction_; |
| 2098 HBasicBlock* current_block_; | 2105 HBasicBlock* current_block_; |
| 2099 HBasicBlock* next_block_; | 2106 HBasicBlock* next_block_; |
| 2100 int argument_count_; | 2107 int argument_count_; |
| 2101 LAllocator* allocator_; | 2108 LAllocator* allocator_; |
| 2102 int position_; | 2109 int position_; |
| 2103 LInstruction* instructions_pending_deoptimization_environment_; | 2110 LInstruction* instructions_pending_deoptimization_environment_; |
| 2104 int pending_deoptimization_ast_id_; | 2111 int pending_deoptimization_ast_id_; |
| 2105 | 2112 |
| 2106 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2113 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
| 2107 }; | 2114 }; |
| 2108 | 2115 |
| 2109 #undef DECLARE_HYDROGEN_ACCESSOR | 2116 #undef DECLARE_HYDROGEN_ACCESSOR |
| 2110 #undef DECLARE_INSTRUCTION | 2117 #undef DECLARE_INSTRUCTION |
| 2111 #undef DECLARE_CONCRETE_INSTRUCTION | 2118 #undef DECLARE_CONCRETE_INSTRUCTION |
| 2112 | 2119 |
| 2113 } } // namespace v8::internal | 2120 } } // namespace v8::internal |
| 2114 | 2121 |
| 2115 #endif // V8_ARM_LITHIUM_ARM_H_ | 2122 #endif // V8_ARM_LITHIUM_ARM_H_ |
| OLD | NEW |