Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(369)

Side by Side Diff: src/code-stubs.h

Issue 19492007: Generate KeyedLoadDictionaryElementStub with Hydrogen (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Better formatting Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/arm/macro-assembler-arm.cc ('k') | src/code-stubs.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 1821 matching lines...) Expand 10 before | Expand all | Expand 10 after
1832 } 1832 }
1833 1833
1834 private: 1834 private:
1835 MacroAssembler* masm_; 1835 MacroAssembler* masm_;
1836 bool previous_allow_; 1836 bool previous_allow_;
1837 1837
1838 DISALLOW_COPY_AND_ASSIGN(AllowStubCallsScope); 1838 DISALLOW_COPY_AND_ASSIGN(AllowStubCallsScope);
1839 }; 1839 };
1840 1840
1841 1841
1842 class KeyedLoadDictionaryElementStub : public PlatformCodeStub { 1842 class KeyedLoadDictionaryElementStub : public HydrogenCodeStub {
1843 public: 1843 public:
1844 KeyedLoadDictionaryElementStub() {} 1844 KeyedLoadDictionaryElementStub() {}
1845 1845
1846 virtual Handle<Code> GenerateCode(Isolate* isolate) V8_OVERRIDE;
1847
1848 virtual void InitializeInterfaceDescriptor(
1849 Isolate* isolate,
1850 CodeStubInterfaceDescriptor* descriptor) V8_OVERRIDE;
1851
1852 private:
1853 Major MajorKey() { return KeyedLoadElement; }
1854 int NotMissMinorKey() { return DICTIONARY_ELEMENTS; }
1855
1856 DISALLOW_COPY_AND_ASSIGN(KeyedLoadDictionaryElementStub);
1857 };
1858
1859
1860 class KeyedLoadDictionaryElementPlatformStub : public PlatformCodeStub {
1861 public:
1862 KeyedLoadDictionaryElementPlatformStub() {}
1863
1846 void Generate(MacroAssembler* masm); 1864 void Generate(MacroAssembler* masm);
1847 1865
1848 private: 1866 private:
1849 Major MajorKey() { return KeyedLoadElement; } 1867 Major MajorKey() { return KeyedLoadElement; }
1850 int MinorKey() { return DICTIONARY_ELEMENTS; } 1868 int MinorKey() { return DICTIONARY_ELEMENTS; }
1851 1869
1852 DISALLOW_COPY_AND_ASSIGN(KeyedLoadDictionaryElementStub); 1870 DISALLOW_COPY_AND_ASSIGN(KeyedLoadDictionaryElementPlatformStub);
1853 }; 1871 };
1854 1872
1855 1873
1856 class DoubleToIStub : public PlatformCodeStub { 1874 class DoubleToIStub : public PlatformCodeStub {
1857 public: 1875 public:
1858 DoubleToIStub(Register source, 1876 DoubleToIStub(Register source,
1859 Register destination, 1877 Register destination,
1860 int offset, 1878 int offset,
1861 bool is_truncating, 1879 bool is_truncating,
1862 bool skip_fastpath = false) : bit_field_(0) { 1880 bool skip_fastpath = false) : bit_field_(0) {
(...skipping 633 matching lines...) Expand 10 before | Expand all | Expand 10 after
2496 int MinorKey() { return 0; } 2514 int MinorKey() { return 0; }
2497 2515
2498 void Generate(MacroAssembler* masm); 2516 void Generate(MacroAssembler* masm);
2499 2517
2500 DISALLOW_COPY_AND_ASSIGN(ProfileEntryHookStub); 2518 DISALLOW_COPY_AND_ASSIGN(ProfileEntryHookStub);
2501 }; 2519 };
2502 2520
2503 } } // namespace v8::internal 2521 } } // namespace v8::internal
2504 2522
2505 #endif // V8_CODE_STUBS_H_ 2523 #endif // V8_CODE_STUBS_H_
OLDNEW
« no previous file with comments | « src/arm/macro-assembler-arm.cc ('k') | src/code-stubs.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698