OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 #if V8_TARGET_ARCH_S390 | 5 #if V8_TARGET_ARCH_S390 |
6 | 6 |
7 #include "src/full-codegen/full-codegen.h" | 7 #include "src/full-codegen/full-codegen.h" |
8 #include "src/ast/compile-time-value.h" | 8 #include "src/ast/compile-time-value.h" |
9 #include "src/ast/scopes.h" | 9 #include "src/ast/scopes.h" |
10 #include "src/code-factory.h" | 10 #include "src/code-factory.h" |
(...skipping 1246 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1257 if (result_saved) { | 1257 if (result_saved) { |
1258 context()->PlugTOS(); | 1258 context()->PlugTOS(); |
1259 } else { | 1259 } else { |
1260 context()->Plug(r2); | 1260 context()->Plug(r2); |
1261 } | 1261 } |
1262 } | 1262 } |
1263 | 1263 |
1264 void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { | 1264 void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { |
1265 Comment cmnt(masm_, "[ ArrayLiteral"); | 1265 Comment cmnt(masm_, "[ ArrayLiteral"); |
1266 | 1266 |
1267 Handle<FixedArray> constant_elements = expr->constant_elements(); | 1267 Handle<ConstantElementsPair> constant_elements = expr->constant_elements(); |
1268 bool has_fast_elements = | 1268 bool has_fast_elements = |
1269 IsFastObjectElementsKind(expr->constant_elements_kind()); | 1269 IsFastObjectElementsKind(expr->constant_elements_kind()); |
1270 Handle<FixedArrayBase> constant_elements_values( | |
1271 FixedArrayBase::cast(constant_elements->get(1))); | |
1272 | 1270 |
1273 AllocationSiteMode allocation_site_mode = TRACK_ALLOCATION_SITE; | 1271 AllocationSiteMode allocation_site_mode = TRACK_ALLOCATION_SITE; |
1274 if (has_fast_elements && !FLAG_allocation_site_pretenuring) { | 1272 if (has_fast_elements && !FLAG_allocation_site_pretenuring) { |
1275 // If the only customer of allocation sites is transitioning, then | 1273 // If the only customer of allocation sites is transitioning, then |
1276 // we can turn it off if we don't have anywhere else to transition to. | 1274 // we can turn it off if we don't have anywhere else to transition to. |
1277 allocation_site_mode = DONT_TRACK_ALLOCATION_SITE; | 1275 allocation_site_mode = DONT_TRACK_ALLOCATION_SITE; |
1278 } | 1276 } |
1279 | 1277 |
1280 __ LoadP(r5, MemOperand(fp, JavaScriptFrameConstants::kFunctionOffset)); | 1278 __ LoadP(r5, MemOperand(fp, JavaScriptFrameConstants::kFunctionOffset)); |
1281 __ LoadSmiLiteral(r4, Smi::FromInt(expr->literal_index())); | 1279 __ LoadSmiLiteral(r4, Smi::FromInt(expr->literal_index())); |
(...skipping 1513 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2795 DCHECK(kOSRBranchInstruction == br_instr); | 2793 DCHECK(kOSRBranchInstruction == br_instr); |
2796 | 2794 |
2797 DCHECK(interrupt_address == | 2795 DCHECK(interrupt_address == |
2798 isolate->builtins()->OnStackReplacement()->entry()); | 2796 isolate->builtins()->OnStackReplacement()->entry()); |
2799 return ON_STACK_REPLACEMENT; | 2797 return ON_STACK_REPLACEMENT; |
2800 } | 2798 } |
2801 | 2799 |
2802 } // namespace internal | 2800 } // namespace internal |
2803 } // namespace v8 | 2801 } // namespace v8 |
2804 #endif // V8_TARGET_ARCH_S390 | 2802 #endif // V8_TARGET_ARCH_S390 |
OLD | NEW |