| 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 85 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 96   V(HasInstanceTypeAndBranch)                   \ | 96   V(HasInstanceTypeAndBranch)                   \ | 
| 97   V(In)                                         \ | 97   V(In)                                         \ | 
| 98   V(InstanceOf)                                 \ | 98   V(InstanceOf)                                 \ | 
| 99   V(InstanceOfKnownGlobal)                      \ | 99   V(InstanceOfKnownGlobal)                      \ | 
| 100   V(InstructionGap)                             \ | 100   V(InstructionGap)                             \ | 
| 101   V(Integer32ToDouble)                          \ | 101   V(Integer32ToDouble)                          \ | 
| 102   V(InvokeFunction)                             \ | 102   V(InvokeFunction)                             \ | 
| 103   V(IsConstructCallAndBranch)                   \ | 103   V(IsConstructCallAndBranch)                   \ | 
| 104   V(IsNilAndBranch)                             \ | 104   V(IsNilAndBranch)                             \ | 
| 105   V(IsObjectAndBranch)                          \ | 105   V(IsObjectAndBranch)                          \ | 
|  | 106   V(IsStringAndBranch)                          \ | 
| 106   V(IsSmiAndBranch)                             \ | 107   V(IsSmiAndBranch)                             \ | 
| 107   V(IsUndetectableAndBranch)                    \ | 108   V(IsUndetectableAndBranch)                    \ | 
|  | 109   V(StringCompareAndBranch)                    \ | 
| 108   V(JSArrayLength)                              \ | 110   V(JSArrayLength)                              \ | 
| 109   V(Label)                                      \ | 111   V(Label)                                      \ | 
| 110   V(LazyBailout)                                \ | 112   V(LazyBailout)                                \ | 
| 111   V(LoadContextSlot)                            \ | 113   V(LoadContextSlot)                            \ | 
| 112   V(LoadElements)                               \ | 114   V(LoadElements)                               \ | 
| 113   V(LoadExternalArrayPointer)                   \ | 115   V(LoadExternalArrayPointer)                   \ | 
| 114   V(LoadFunctionPrototype)                      \ | 116   V(LoadFunctionPrototype)                      \ | 
| 115   V(LoadGlobalCell)                             \ | 117   V(LoadGlobalCell)                             \ | 
| 116   V(LoadGlobalGeneric)                          \ | 118   V(LoadGlobalGeneric)                          \ | 
| 117   V(LoadKeyedFastElement)                       \ | 119   V(LoadKeyedFastElement)                       \ | 
| (...skipping 508 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 626     inputs_[0] = value; | 628     inputs_[0] = value; | 
| 627     temps_[0] = temp; | 629     temps_[0] = temp; | 
| 628   } | 630   } | 
| 629 | 631 | 
| 630   DECLARE_CONCRETE_INSTRUCTION(IsObjectAndBranch, "is-object-and-branch") | 632   DECLARE_CONCRETE_INSTRUCTION(IsObjectAndBranch, "is-object-and-branch") | 
| 631 | 633 | 
| 632   virtual void PrintDataTo(StringStream* stream); | 634   virtual void PrintDataTo(StringStream* stream); | 
| 633 }; | 635 }; | 
| 634 | 636 | 
| 635 | 637 | 
|  | 638 class LIsStringAndBranch: public LControlInstruction<1, 1> { | 
|  | 639  public: | 
|  | 640   LIsStringAndBranch(LOperand* value, LOperand* temp) { | 
|  | 641     inputs_[0] = value; | 
|  | 642     temps_[0] = temp; | 
|  | 643   } | 
|  | 644 | 
|  | 645   DECLARE_CONCRETE_INSTRUCTION(IsStringAndBranch, "is-string-and-branch") | 
|  | 646 | 
|  | 647   virtual void PrintDataTo(StringStream* stream); | 
|  | 648 }; | 
|  | 649 | 
|  | 650 | 
| 636 class LIsSmiAndBranch: public LControlInstruction<1, 0> { | 651 class LIsSmiAndBranch: public LControlInstruction<1, 0> { | 
| 637  public: | 652  public: | 
| 638   explicit LIsSmiAndBranch(LOperand* value) { | 653   explicit LIsSmiAndBranch(LOperand* value) { | 
| 639     inputs_[0] = value; | 654     inputs_[0] = value; | 
| 640   } | 655   } | 
| 641 | 656 | 
| 642   DECLARE_CONCRETE_INSTRUCTION(IsSmiAndBranch, "is-smi-and-branch") | 657   DECLARE_CONCRETE_INSTRUCTION(IsSmiAndBranch, "is-smi-and-branch") | 
| 643   DECLARE_HYDROGEN_ACCESSOR(IsSmiAndBranch) | 658   DECLARE_HYDROGEN_ACCESSOR(IsSmiAndBranch) | 
| 644 | 659 | 
| 645   virtual void PrintDataTo(StringStream* stream); | 660   virtual void PrintDataTo(StringStream* stream); | 
| 646 }; | 661 }; | 
| 647 | 662 | 
| 648 | 663 | 
| 649 class LIsUndetectableAndBranch: public LControlInstruction<1, 1> { | 664 class LIsUndetectableAndBranch: public LControlInstruction<1, 1> { | 
| 650  public: | 665  public: | 
| 651   LIsUndetectableAndBranch(LOperand* value, LOperand* temp) { | 666   LIsUndetectableAndBranch(LOperand* value, LOperand* temp) { | 
| 652     inputs_[0] = value; | 667     inputs_[0] = value; | 
| 653     temps_[0] = temp; | 668     temps_[0] = temp; | 
| 654   } | 669   } | 
| 655 | 670 | 
| 656   DECLARE_CONCRETE_INSTRUCTION(IsUndetectableAndBranch, | 671   DECLARE_CONCRETE_INSTRUCTION(IsUndetectableAndBranch, | 
| 657                                "is-undetectable-and-branch") | 672                                "is-undetectable-and-branch") | 
| 658 | 673 | 
| 659   virtual void PrintDataTo(StringStream* stream); | 674   virtual void PrintDataTo(StringStream* stream); | 
| 660 }; | 675 }; | 
| 661 | 676 | 
| 662 | 677 | 
|  | 678 class LStringCompareAndBranch: public LControlInstruction<3, 0> { | 
|  | 679  public: | 
|  | 680   LStringCompareAndBranch(LOperand* context, LOperand* left, LOperand* right) { | 
|  | 681     inputs_[0] = context; | 
|  | 682     inputs_[1] = left; | 
|  | 683     inputs_[2] = right; | 
|  | 684   } | 
|  | 685 | 
|  | 686   DECLARE_CONCRETE_INSTRUCTION(StringCompareAndBranch, | 
|  | 687                                "compare-generic-and-branch") | 
|  | 688   DECLARE_HYDROGEN_ACCESSOR(StringCompareAndBranch) | 
|  | 689 | 
|  | 690   virtual void PrintDataTo(StringStream* stream); | 
|  | 691 | 
|  | 692   Token::Value op() const { return hydrogen()->token(); } | 
|  | 693 }; | 
|  | 694 | 
|  | 695 | 
| 663 class LHasInstanceTypeAndBranch: public LControlInstruction<1, 1> { | 696 class LHasInstanceTypeAndBranch: public LControlInstruction<1, 1> { | 
| 664  public: | 697  public: | 
| 665   LHasInstanceTypeAndBranch(LOperand* value, LOperand* temp) { | 698   LHasInstanceTypeAndBranch(LOperand* value, LOperand* temp) { | 
| 666     inputs_[0] = value; | 699     inputs_[0] = value; | 
| 667     temps_[0] = temp; | 700     temps_[0] = temp; | 
| 668   } | 701   } | 
| 669 | 702 | 
| 670   DECLARE_CONCRETE_INSTRUCTION(HasInstanceTypeAndBranch, | 703   DECLARE_CONCRETE_INSTRUCTION(HasInstanceTypeAndBranch, | 
| 671                                "has-instance-type-and-branch") | 704                                "has-instance-type-and-branch") | 
| 672   DECLARE_HYDROGEN_ACCESSOR(HasInstanceTypeAndBranch) | 705   DECLARE_HYDROGEN_ACCESSOR(HasInstanceTypeAndBranch) | 
| (...skipping 1637 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2310 | 2343 | 
| 2311   DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2344   DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 
| 2312 }; | 2345 }; | 
| 2313 | 2346 | 
| 2314 #undef DECLARE_HYDROGEN_ACCESSOR | 2347 #undef DECLARE_HYDROGEN_ACCESSOR | 
| 2315 #undef DECLARE_CONCRETE_INSTRUCTION | 2348 #undef DECLARE_CONCRETE_INSTRUCTION | 
| 2316 | 2349 | 
| 2317 } }  // namespace v8::internal | 2350 } }  // namespace v8::internal | 
| 2318 | 2351 | 
| 2319 #endif  // V8_IA32_LITHIUM_IA32_H_ | 2352 #endif  // V8_IA32_LITHIUM_IA32_H_ | 
| OLD | NEW | 
|---|