OLD | NEW |
1 // Copyright 2009 the V8 project authors. All rights reserved. | 1 // Copyright 2009 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 583 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
594 friend class JumpTarget; | 594 friend class JumpTarget; |
595 friend class Reference; | 595 friend class Reference; |
596 friend class Result; | 596 friend class Result; |
597 | 597 |
598 friend class CodeGeneratorPatcher; // Used in test-log-stack-tracer.cc | 598 friend class CodeGeneratorPatcher; // Used in test-log-stack-tracer.cc |
599 | 599 |
600 DISALLOW_COPY_AND_ASSIGN(CodeGenerator); | 600 DISALLOW_COPY_AND_ASSIGN(CodeGenerator); |
601 }; | 601 }; |
602 | 602 |
603 | 603 |
| 604 // ------------------------------------------------------------------------- |
| 605 // Code stubs |
| 606 // |
| 607 // These independent code objects are created once, and used multiple |
| 608 // times by generated code to perform common tasks, often the slow |
| 609 // case of a JavaScript operation. They are all subclasses of CodeStub, |
| 610 // which is declared in code-stubs.h. |
| 611 |
| 612 |
604 // Flag that indicates whether or not the code that handles smi arguments | 613 // Flag that indicates whether or not the code that handles smi arguments |
605 // should be placed in the stub, inlined, or omitted entirely. | 614 // should be placed in the stub, inlined, or omitted entirely. |
606 enum GenericBinaryFlags { | 615 enum GenericBinaryFlags { |
607 SMI_CODE_IN_STUB, | 616 SMI_CODE_IN_STUB, |
608 SMI_CODE_INLINED | 617 SMI_CODE_INLINED |
609 }; | 618 }; |
610 | 619 |
611 | 620 |
612 class GenericBinaryOpStub: public CodeStub { | 621 class GenericBinaryOpStub: public CodeStub { |
613 public: | 622 public: |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
648 | ModeBits::encode(mode_) | 657 | ModeBits::encode(mode_) |
649 | FlagBits::encode(flags_); | 658 | FlagBits::encode(flags_); |
650 } | 659 } |
651 void Generate(MacroAssembler* masm); | 660 void Generate(MacroAssembler* masm); |
652 }; | 661 }; |
653 | 662 |
654 | 663 |
655 } } // namespace v8::internal | 664 } } // namespace v8::internal |
656 | 665 |
657 #endif // V8_X64_CODEGEN_X64_H_ | 666 #endif // V8_X64_CODEGEN_X64_H_ |
OLD | NEW |