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 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 V(CheckSmi) \ | 76 V(CheckSmi) \ |
77 V(ClampDToUint8) \ | 77 V(ClampDToUint8) \ |
78 V(ClampIToUint8) \ | 78 V(ClampIToUint8) \ |
79 V(ClampTToUint8) \ | 79 V(ClampTToUint8) \ |
80 V(ClassOfTest) \ | 80 V(ClassOfTest) \ |
81 V(ClassOfTestAndBranch) \ | 81 V(ClassOfTestAndBranch) \ |
82 V(CmpConstantEq) \ | 82 V(CmpConstantEq) \ |
83 V(CmpConstantEqAndBranch) \ | 83 V(CmpConstantEqAndBranch) \ |
84 V(CmpID) \ | 84 V(CmpID) \ |
85 V(CmpIDAndBranch) \ | 85 V(CmpIDAndBranch) \ |
86 V(CmpJSObjectEq) \ | 86 V(CmpObjectEq) \ |
87 V(CmpJSObjectEqAndBranch) \ | 87 V(CmpObjectEqAndBranch) \ |
88 V(CmpMapAndBranch) \ | 88 V(CmpMapAndBranch) \ |
89 V(CmpSymbolEq) \ | |
90 V(CmpSymbolEqAndBranch) \ | |
91 V(CmpT) \ | 89 V(CmpT) \ |
92 V(ConstantD) \ | 90 V(ConstantD) \ |
93 V(ConstantI) \ | 91 V(ConstantI) \ |
94 V(ConstantT) \ | 92 V(ConstantT) \ |
95 V(Context) \ | 93 V(Context) \ |
96 V(DeleteProperty) \ | 94 V(DeleteProperty) \ |
97 V(Deoptimize) \ | 95 V(Deoptimize) \ |
98 V(DivI) \ | 96 V(DivI) \ |
99 V(DoubleToI) \ | 97 V(DoubleToI) \ |
100 V(ElementsKind) \ | 98 V(ElementsKind) \ |
(...skipping 512 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
613 } | 611 } |
614 | 612 |
615 DECLARE_CONCRETE_INSTRUCTION(UnaryMathOperation, "unary-math-operation") | 613 DECLARE_CONCRETE_INSTRUCTION(UnaryMathOperation, "unary-math-operation") |
616 DECLARE_HYDROGEN_ACCESSOR(UnaryMathOperation) | 614 DECLARE_HYDROGEN_ACCESSOR(UnaryMathOperation) |
617 | 615 |
618 virtual void PrintDataTo(StringStream* stream); | 616 virtual void PrintDataTo(StringStream* stream); |
619 BuiltinFunctionId op() const { return hydrogen()->op(); } | 617 BuiltinFunctionId op() const { return hydrogen()->op(); } |
620 }; | 618 }; |
621 | 619 |
622 | 620 |
623 class LCmpJSObjectEq: public LTemplateInstruction<1, 2, 0> { | 621 class LCmpObjectEq: public LTemplateInstruction<1, 2, 0> { |
624 public: | 622 public: |
625 LCmpJSObjectEq(LOperand* left, LOperand* right) { | 623 LCmpObjectEq(LOperand* left, LOperand* right) { |
626 inputs_[0] = left; | 624 inputs_[0] = left; |
627 inputs_[1] = right; | 625 inputs_[1] = right; |
628 } | 626 } |
629 | 627 |
630 DECLARE_CONCRETE_INSTRUCTION(CmpJSObjectEq, "cmp-jsobject-eq") | 628 DECLARE_CONCRETE_INSTRUCTION(CmpObjectEq, "cmp-object-eq") |
631 }; | 629 }; |
632 | 630 |
633 | 631 |
634 class LCmpJSObjectEqAndBranch: public LControlInstruction<2, 0> { | 632 class LCmpObjectEqAndBranch: public LControlInstruction<2, 0> { |
635 public: | 633 public: |
636 LCmpJSObjectEqAndBranch(LOperand* left, LOperand* right) { | 634 LCmpObjectEqAndBranch(LOperand* left, LOperand* right) { |
637 inputs_[0] = left; | 635 inputs_[0] = left; |
638 inputs_[1] = right; | 636 inputs_[1] = right; |
639 } | 637 } |
640 | 638 |
641 DECLARE_CONCRETE_INSTRUCTION(CmpJSObjectEqAndBranch, | 639 DECLARE_CONCRETE_INSTRUCTION(CmpObjectEqAndBranch, |
642 "cmp-jsobject-eq-and-branch") | 640 "cmp-object-eq-and-branch") |
643 }; | |
644 | |
645 | |
646 class LCmpSymbolEq: public LTemplateInstruction<1, 2, 0> { | |
647 public: | |
648 LCmpSymbolEq(LOperand* left, LOperand* right) { | |
649 inputs_[0] = left; | |
650 inputs_[1] = right; | |
651 } | |
652 | |
653 DECLARE_CONCRETE_INSTRUCTION(CmpSymbolEq, "cmp-symbol-eq") | |
654 }; | |
655 | |
656 | |
657 class LCmpSymbolEqAndBranch: public LControlInstruction<2, 0> { | |
658 public: | |
659 LCmpSymbolEqAndBranch(LOperand* left, LOperand* right) { | |
660 inputs_[0] = left; | |
661 inputs_[1] = right; | |
662 } | |
663 | |
664 DECLARE_CONCRETE_INSTRUCTION(CmpSymbolEqAndBranch, "cmp-symbol-eq-and-branch") | |
665 }; | 641 }; |
666 | 642 |
667 | 643 |
668 class LCmpConstantEq: public LTemplateInstruction<1, 1, 0> { | 644 class LCmpConstantEq: public LTemplateInstruction<1, 1, 0> { |
669 public: | 645 public: |
670 explicit LCmpConstantEq(LOperand* left) { | 646 explicit LCmpConstantEq(LOperand* left) { |
671 inputs_[0] = left; | 647 inputs_[0] = left; |
672 } | 648 } |
673 | 649 |
674 DECLARE_CONCRETE_INSTRUCTION(CmpConstantEq, "cmp-constant-eq") | 650 DECLARE_CONCRETE_INSTRUCTION(CmpConstantEq, "cmp-constant-eq") |
(...skipping 1636 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2311 | 2287 |
2312 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2288 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2313 }; | 2289 }; |
2314 | 2290 |
2315 #undef DECLARE_HYDROGEN_ACCESSOR | 2291 #undef DECLARE_HYDROGEN_ACCESSOR |
2316 #undef DECLARE_CONCRETE_INSTRUCTION | 2292 #undef DECLARE_CONCRETE_INSTRUCTION |
2317 | 2293 |
2318 } } // namespace v8::int | 2294 } } // namespace v8::int |
2319 | 2295 |
2320 #endif // V8_X64_LITHIUM_X64_H_ | 2296 #endif // V8_X64_LITHIUM_X64_H_ |
OLD | NEW |