| 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 6803 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6814 | 6814 |
| 6815 | 6815 |
| 6816 template<class T> | 6816 template<class T> |
| 6817 static void ArrayConstructorStubAheadOfTimeHelper(Isolate* isolate) { | 6817 static void ArrayConstructorStubAheadOfTimeHelper(Isolate* isolate) { |
| 6818 int to_index = GetSequenceIndexFromFastElementsKind( | 6818 int to_index = GetSequenceIndexFromFastElementsKind( |
| 6819 TERMINAL_FAST_ELEMENTS_KIND); | 6819 TERMINAL_FAST_ELEMENTS_KIND); |
| 6820 for (int i = 0; i <= to_index; ++i) { | 6820 for (int i = 0; i <= to_index; ++i) { |
| 6821 ElementsKind kind = GetFastElementsKindFromSequenceIndex(i); | 6821 ElementsKind kind = GetFastElementsKindFromSequenceIndex(i); |
| 6822 T stub(kind); | 6822 T stub(kind); |
| 6823 stub.GetCode(isolate)->set_is_pregenerated(true); | 6823 stub.GetCode(isolate)->set_is_pregenerated(true); |
| 6824 if (AllocationSiteInfo::GetMode(kind) != DONT_TRACK_ALLOCATION_SITE) { |
| 6825 T stub1(kind, true); |
| 6826 stub1.GetCode(isolate)->set_is_pregenerated(true); |
| 6827 } |
| 6824 } | 6828 } |
| 6825 } | 6829 } |
| 6826 | 6830 |
| 6827 | 6831 |
| 6828 void ArrayConstructorStubBase::GenerateStubsAheadOfTime(Isolate* isolate) { | 6832 void ArrayConstructorStubBase::GenerateStubsAheadOfTime(Isolate* isolate) { |
| 6829 ArrayConstructorStubAheadOfTimeHelper<ArrayNoArgumentConstructorStub>( | 6833 ArrayConstructorStubAheadOfTimeHelper<ArrayNoArgumentConstructorStub>( |
| 6830 isolate); | 6834 isolate); |
| 6831 ArrayConstructorStubAheadOfTimeHelper<ArraySingleArgumentConstructorStub>( | 6835 ArrayConstructorStubAheadOfTimeHelper<ArraySingleArgumentConstructorStub>( |
| 6832 isolate); | 6836 isolate); |
| 6833 ArrayConstructorStubAheadOfTimeHelper<ArrayNArgumentsConstructorStub>( | 6837 ArrayConstructorStubAheadOfTimeHelper<ArrayNArgumentsConstructorStub>( |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6920 __ jmp(generic_construct_stub, RelocInfo::CODE_TARGET); | 6924 __ jmp(generic_construct_stub, RelocInfo::CODE_TARGET); |
| 6921 } | 6925 } |
| 6922 } | 6926 } |
| 6923 | 6927 |
| 6924 | 6928 |
| 6925 #undef __ | 6929 #undef __ |
| 6926 | 6930 |
| 6927 } } // namespace v8::internal | 6931 } } // namespace v8::internal |
| 6928 | 6932 |
| 6929 #endif // V8_TARGET_ARCH_X64 | 6933 #endif // V8_TARGET_ARCH_X64 |
| OLD | NEW |