OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 V(ArgumentsElements) \ | 72 V(ArgumentsElements) \ |
73 V(ArgumentsLength) \ | 73 V(ArgumentsLength) \ |
74 V(ArgumentsObject) \ | 74 V(ArgumentsObject) \ |
75 V(Bitwise) \ | 75 V(Bitwise) \ |
76 V(BlockEntry) \ | 76 V(BlockEntry) \ |
77 V(BoundsCheck) \ | 77 V(BoundsCheck) \ |
78 V(BoundsCheckBaseIndexInformation) \ | 78 V(BoundsCheckBaseIndexInformation) \ |
79 V(Branch) \ | 79 V(Branch) \ |
80 V(CallConstantFunction) \ | 80 V(CallConstantFunction) \ |
81 V(CallFunction) \ | 81 V(CallFunction) \ |
82 V(CallGlobal) \ | |
83 V(CallKeyed) \ | 82 V(CallKeyed) \ |
84 V(CallKnownGlobal) \ | 83 V(CallKnownGlobal) \ |
85 V(CallNamed) \ | 84 V(CallNamed) \ |
86 V(CallNew) \ | 85 V(CallNew) \ |
87 V(CallNewArray) \ | 86 V(CallNewArray) \ |
88 V(CallRuntime) \ | 87 V(CallRuntime) \ |
89 V(CallStub) \ | 88 V(CallStub) \ |
90 V(CapturedObject) \ | 89 V(CapturedObject) \ |
91 V(Change) \ | 90 V(Change) \ |
92 V(CheckHeapObject) \ | 91 V(CheckHeapObject) \ |
(...skipping 2342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2435 HCallFunction(HValue* context, | 2434 HCallFunction(HValue* context, |
2436 HValue* function, | 2435 HValue* function, |
2437 int argument_count, | 2436 int argument_count, |
2438 CallMode mode = NORMAL_CALL) | 2437 CallMode mode = NORMAL_CALL) |
2439 : HBinaryCall(context, function, argument_count), call_mode_(mode) { | 2438 : HBinaryCall(context, function, argument_count), call_mode_(mode) { |
2440 } | 2439 } |
2441 CallMode call_mode_; | 2440 CallMode call_mode_; |
2442 }; | 2441 }; |
2443 | 2442 |
2444 | 2443 |
2445 class HCallGlobal V8_FINAL : public HUnaryCall { | |
2446 public: | |
2447 DECLARE_INSTRUCTION_WITH_CONTEXT_FACTORY_P2(HCallGlobal, Handle<String>, int); | |
2448 | |
2449 virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; | |
2450 | |
2451 HValue* context() { return value(); } | |
2452 Handle<String> name() const { return name_; } | |
2453 | |
2454 DECLARE_CONCRETE_INSTRUCTION(CallGlobal) | |
2455 | |
2456 private: | |
2457 HCallGlobal(HValue* context, Handle<String> name, int argument_count) | |
2458 : HUnaryCall(context, argument_count), name_(name) { | |
2459 } | |
2460 | |
2461 Handle<String> name_; | |
2462 }; | |
2463 | |
2464 | |
2465 class HCallKnownGlobal V8_FINAL : public HCall<0> { | 2444 class HCallKnownGlobal V8_FINAL : public HCall<0> { |
2466 public: | 2445 public: |
2467 DECLARE_INSTRUCTION_FACTORY_P2(HCallKnownGlobal, Handle<JSFunction>, int); | 2446 DECLARE_INSTRUCTION_FACTORY_P2(HCallKnownGlobal, Handle<JSFunction>, int); |
2468 | 2447 |
2469 virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; | 2448 virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
2470 | 2449 |
2471 Handle<JSFunction> target() const { return target_; } | 2450 Handle<JSFunction> target() const { return target_; } |
2472 int formal_parameter_count() const { return formal_parameter_count_; } | 2451 int formal_parameter_count() const { return formal_parameter_count_; } |
2473 | 2452 |
2474 virtual Representation RequiredInputRepresentation(int index) V8_OVERRIDE { | 2453 virtual Representation RequiredInputRepresentation(int index) V8_OVERRIDE { |
(...skipping 5104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7579 virtual bool IsDeletable() const V8_OVERRIDE { return true; } | 7558 virtual bool IsDeletable() const V8_OVERRIDE { return true; } |
7580 }; | 7559 }; |
7581 | 7560 |
7582 | 7561 |
7583 #undef DECLARE_INSTRUCTION | 7562 #undef DECLARE_INSTRUCTION |
7584 #undef DECLARE_CONCRETE_INSTRUCTION | 7563 #undef DECLARE_CONCRETE_INSTRUCTION |
7585 | 7564 |
7586 } } // namespace v8::internal | 7565 } } // namespace v8::internal |
7587 | 7566 |
7588 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ | 7567 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ |
OLD | NEW |