OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/bailout-reason.h" | 7 #include "src/bailout-reason.h" |
8 #include "src/code-stubs.h" | 8 #include "src/code-stubs.h" |
9 #include "src/field-index.h" | 9 #include "src/field-index.h" |
10 #include "src/hydrogen.h" | 10 #include "src/hydrogen.h" |
(...skipping 1811 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1822 } | 1822 } |
1823 | 1823 |
1824 | 1824 |
1825 Handle<Code> StoreGlobalViaContextStub::GenerateCode() { | 1825 Handle<Code> StoreGlobalViaContextStub::GenerateCode() { |
1826 return DoGenerateCode(this); | 1826 return DoGenerateCode(this); |
1827 } | 1827 } |
1828 | 1828 |
1829 | 1829 |
1830 template <> | 1830 template <> |
1831 HValue* CodeStubGraphBuilder<ElementsTransitionAndStoreStub>::BuildCodeStub() { | 1831 HValue* CodeStubGraphBuilder<ElementsTransitionAndStoreStub>::BuildCodeStub() { |
1832 HValue* value = GetParameter(ElementsTransitionAndStoreStub::kValueIndex); | 1832 HValue* object = GetParameter(StoreTransitionDescriptor::kReceiverIndex); |
1833 HValue* map = GetParameter(ElementsTransitionAndStoreStub::kMapIndex); | 1833 HValue* key = GetParameter(StoreTransitionDescriptor::kNameIndex); |
1834 HValue* key = GetParameter(ElementsTransitionAndStoreStub::kKeyIndex); | 1834 HValue* value = GetParameter(StoreTransitionDescriptor::kValueIndex); |
1835 HValue* object = GetParameter(ElementsTransitionAndStoreStub::kObjectIndex); | 1835 HValue* map = GetParameter(StoreTransitionDescriptor::kMapIndex); |
1836 | 1836 |
1837 if (FLAG_trace_elements_transitions) { | 1837 if (FLAG_trace_elements_transitions) { |
1838 // Tracing elements transitions is the job of the runtime. | 1838 // Tracing elements transitions is the job of the runtime. |
1839 Add<HDeoptimize>(Deoptimizer::kTracingElementsTransitions, | 1839 Add<HDeoptimize>(Deoptimizer::kTracingElementsTransitions, |
1840 Deoptimizer::EAGER); | 1840 Deoptimizer::EAGER); |
1841 } else { | 1841 } else { |
1842 info()->MarkAsSavesCallerDoubles(); | 1842 info()->MarkAsSavesCallerDoubles(); |
1843 | 1843 |
1844 BuildTransitionElementsKind(object, map, | 1844 BuildTransitionElementsKind(object, map, |
1845 casted_stub()->from_kind(), | 1845 casted_stub()->from_kind(), |
(...skipping 641 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2487 return Pop(); | 2487 return Pop(); |
2488 } | 2488 } |
2489 | 2489 |
2490 | 2490 |
2491 Handle<Code> KeyedLoadGenericStub::GenerateCode() { | 2491 Handle<Code> KeyedLoadGenericStub::GenerateCode() { |
2492 return DoGenerateCode(this); | 2492 return DoGenerateCode(this); |
2493 } | 2493 } |
2494 | 2494 |
2495 } // namespace internal | 2495 } // namespace internal |
2496 } // namespace v8 | 2496 } // namespace v8 |
OLD | NEW |