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

Side by Side Diff: runtime/vm/intermediate_language_dbc.cc

Issue 2471793002: Fix DBC build. (Closed)
Patch Set: Created 4 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_DBC. 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_DBC.
6 #if defined(TARGET_ARCH_DBC) 6 #if defined(TARGET_ARCH_DBC)
7 7
8 #include "vm/intermediate_language.h" 8 #include "vm/intermediate_language.h"
9 9
10 #include "vm/cpu.h" 10 #include "vm/cpu.h"
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 M(BinaryFloat64x2Op) \ 85 M(BinaryFloat64x2Op) \
86 M(Float64x2Zero) \ 86 M(Float64x2Zero) \
87 M(Float64x2Constructor) \ 87 M(Float64x2Constructor) \
88 M(Float64x2Splat) \ 88 M(Float64x2Splat) \
89 M(Float32x4ToFloat64x2) \ 89 M(Float32x4ToFloat64x2) \
90 M(Float64x2ToFloat32x4) \ 90 M(Float64x2ToFloat32x4) \
91 M(Simd64x2Shuffle) \ 91 M(Simd64x2Shuffle) \
92 M(Float64x2ZeroArg) \ 92 M(Float64x2ZeroArg) \
93 M(Float64x2OneArg) \ 93 M(Float64x2OneArg) \
94 M(CheckedSmiOp) \ 94 M(CheckedSmiOp) \
95 M(CheckedSmiComparison) \
95 96
96 // Location summaries actually are not used by the unoptimizing DBC compiler 97 // Location summaries actually are not used by the unoptimizing DBC compiler
97 // because we don't allocate any registers. 98 // because we don't allocate any registers.
98 static LocationSummary* CreateLocationSummary( 99 static LocationSummary* CreateLocationSummary(
99 Zone* zone, 100 Zone* zone,
100 intptr_t num_inputs, 101 intptr_t num_inputs,
101 Location output = Location::NoLocation(), 102 Location output = Location::NoLocation(),
102 LocationSummary::ContainsCall contains_call = LocationSummary::kNoCall, 103 LocationSummary::ContainsCall contains_call = LocationSummary::kNoCall,
103 intptr_t num_temps = 0) { 104 intptr_t num_temps = 0) {
104 LocationSummary* locs = new(zone) LocationSummary( 105 LocationSummary* locs = new(zone) LocationSummary(
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
172 173
173 #define DEFINE_UNREACHABLE(Name) \ 174 #define DEFINE_UNREACHABLE(Name) \
174 DEFINE_UNREACHABLE_MAKE_LOCATION_SUMMARY(Name) \ 175 DEFINE_UNREACHABLE_MAKE_LOCATION_SUMMARY(Name) \
175 DEFINE_UNREACHABLE_EMIT_NATIVE_CODE(Name) \ 176 DEFINE_UNREACHABLE_EMIT_NATIVE_CODE(Name) \
176 177
177 FOR_EACH_UNREACHABLE_INSTRUCTION(DEFINE_UNREACHABLE) 178 FOR_EACH_UNREACHABLE_INSTRUCTION(DEFINE_UNREACHABLE)
178 179
179 #undef DEFINE_UNREACHABLE 180 #undef DEFINE_UNREACHABLE
180 181
181 182
183 // Only used in AOT compilation.
184 DEFINE_UNIMPLEMENTED_EMIT_BRANCH_CODE(CheckedSmiComparison)
185
186
182 EMIT_NATIVE_CODE(InstanceOf, 2, Location::SameAsFirstInput(), 187 EMIT_NATIVE_CODE(InstanceOf, 2, Location::SameAsFirstInput(),
183 LocationSummary::kCall) { 188 LocationSummary::kCall) {
184 SubtypeTestCache& test_cache = SubtypeTestCache::Handle(); 189 SubtypeTestCache& test_cache = SubtypeTestCache::Handle();
185 if (!type().IsVoidType() && type().IsInstantiated()) { 190 if (!type().IsVoidType() && type().IsInstantiated()) {
186 test_cache = SubtypeTestCache::New(); 191 test_cache = SubtypeTestCache::New();
187 } 192 }
188 193
189 if (compiler->is_optimizing()) { 194 if (compiler->is_optimizing()) {
190 __ Push(locs()->in(0).reg()); // Value. 195 __ Push(locs()->in(0).reg()); // Value.
191 __ Push(locs()->in(1).reg()); // Instantiator type arguments. 196 __ Push(locs()->in(1).reg()); // Instantiator type arguments.
(...skipping 1767 matching lines...) Expand 10 before | Expand all | Expand 10 after
1959 __ IfULe(length, index); 1964 __ IfULe(length, index);
1960 compiler->EmitDeopt(deopt_id(), 1965 compiler->EmitDeopt(deopt_id(),
1961 ICData::kDeoptCheckArrayBound, 1966 ICData::kDeoptCheckArrayBound,
1962 (generalized_ ? ICData::kGeneralized : 0) | 1967 (generalized_ ? ICData::kGeneralized : 0) |
1963 (licm_hoisted_ ? ICData::kHoisted : 0)); 1968 (licm_hoisted_ ? ICData::kHoisted : 0));
1964 } 1969 }
1965 1970
1966 } // namespace dart 1971 } // namespace dart
1967 1972
1968 #endif // defined TARGET_ARCH_DBC 1973 #endif // defined TARGET_ARCH_DBC
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698