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

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

Issue 1683363002: Remove support for Javascript warnings in the VM. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: address comment Created 4 years, 10 months 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 | « runtime/vm/intermediate_language.h ('k') | runtime/vm/intermediate_language_arm.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 (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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/intermediate_language.h" 5 #include "vm/intermediate_language.h"
6 6
7 #include "vm/bit_vector.h" 7 #include "vm/bit_vector.h"
8 #include "vm/bootstrap.h" 8 #include "vm/bootstrap.h"
9 #include "vm/compiler.h" 9 #include "vm/compiler.h"
10 #include "vm/constant_propagator.h" 10 #include "vm/constant_propagator.h"
(...skipping 25 matching lines...) Expand all
36 DEFINE_FLAG(bool, propagate_ic_data, true, 36 DEFINE_FLAG(bool, propagate_ic_data, true,
37 "Propagate IC data from unoptimized to optimized IC calls."); 37 "Propagate IC data from unoptimized to optimized IC calls.");
38 DEFINE_FLAG(bool, two_args_smi_icd, true, 38 DEFINE_FLAG(bool, two_args_smi_icd, true,
39 "Generate special IC stubs for two args Smi operations"); 39 "Generate special IC stubs for two args Smi operations");
40 DEFINE_FLAG(bool, unbox_numeric_fields, true, 40 DEFINE_FLAG(bool, unbox_numeric_fields, true,
41 "Support unboxed double and float32x4 fields."); 41 "Support unboxed double and float32x4 fields.");
42 DEFINE_FLAG(bool, fields_may_be_reset, false, 42 DEFINE_FLAG(bool, fields_may_be_reset, false,
43 "Don't optimize away static field initialization"); 43 "Don't optimize away static field initialization");
44 DECLARE_FLAG(bool, eliminate_type_checks); 44 DECLARE_FLAG(bool, eliminate_type_checks);
45 DECLARE_FLAG(bool, trace_optimization); 45 DECLARE_FLAG(bool, trace_optimization);
46 DECLARE_FLAG(bool, throw_on_javascript_int_overflow);
47 46
48 Definition::Definition(intptr_t deopt_id) 47 Definition::Definition(intptr_t deopt_id)
49 : Instruction(deopt_id), 48 : Instruction(deopt_id),
50 range_(NULL), 49 range_(NULL),
51 type_(NULL), 50 type_(NULL),
52 temp_index_(-1), 51 temp_index_(-1),
53 ssa_temp_index_(-1), 52 ssa_temp_index_(-1),
54 input_use_list_(NULL), 53 input_use_list_(NULL),
55 env_use_list_(NULL), 54 env_use_list_(NULL),
56 constant_value_(NULL) { 55 constant_value_(NULL) {
(...skipping 1259 matching lines...) Expand 10 before | Expand all | Expand 10 after
1316 UNREACHABLE(); 1315 UNREACHABLE();
1317 } 1316 }
1318 1317
1319 default: 1318 default:
1320 return can_overflow(); 1319 return can_overflow();
1321 } 1320 }
1322 } 1321 }
1323 1322
1324 1323
1325 bool BinarySmiOpInstr::CanDeoptimize() const { 1324 bool BinarySmiOpInstr::CanDeoptimize() const {
1326 if (FLAG_throw_on_javascript_int_overflow && (Smi::kBits > 32)) {
1327 // If Smi's are bigger than 32-bits, then the instruction could deoptimize
1328 // if the result is too big.
1329 return true;
1330 }
1331 switch (op_kind()) { 1325 switch (op_kind()) {
1332 case Token::kBIT_AND: 1326 case Token::kBIT_AND:
1333 case Token::kBIT_OR: 1327 case Token::kBIT_OR:
1334 case Token::kBIT_XOR: 1328 case Token::kBIT_XOR:
1335 return false; 1329 return false;
1336 1330
1337 case Token::kSHR: 1331 case Token::kSHR:
1338 return !RangeUtils::IsPositive(right()->definition()->range()); 1332 return !RangeUtils::IsPositive(right()->definition()->range());
1339 1333
1340 case Token::kSHL: 1334 case Token::kSHL:
(...skipping 2390 matching lines...) Expand 10 before | Expand all | Expand 10 after
3731 set_native_c_function(native_function); 3725 set_native_c_function(native_function);
3732 function().SetIsNativeAutoSetupScope(auto_setup_scope); 3726 function().SetIsNativeAutoSetupScope(auto_setup_scope);
3733 Dart_NativeEntryResolver resolver = library.native_entry_resolver(); 3727 Dart_NativeEntryResolver resolver = library.native_entry_resolver();
3734 bool is_bootstrap_native = Bootstrap::IsBootstapResolver(resolver); 3728 bool is_bootstrap_native = Bootstrap::IsBootstapResolver(resolver);
3735 set_is_bootstrap_native(is_bootstrap_native); 3729 set_is_bootstrap_native(is_bootstrap_native);
3736 } 3730 }
3737 3731
3738 #undef __ 3732 #undef __
3739 3733
3740 } // namespace dart 3734 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/vm/intermediate_language.h ('k') | runtime/vm/intermediate_language_arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698