diff options
author | Dave Allison <dallison@google.com> | 2014-05-09 22:04:58 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-05-09 22:04:58 +0000 |
commit | 537aaf122b93cd72e3e886831c686c3b2f83e441 (patch) | |
tree | f9befe6e1af737b97eec9aa334039ef1591be7a2 /runtime | |
parent | 9d7546662eb7138a7263f12f70d884554483a5a6 (diff) | |
parent | ad9697a91d5acdc772ae6c0461540bfec358a070 (diff) | |
download | art-537aaf122b93cd72e3e886831c686c3b2f83e441.zip art-537aaf122b93cd72e3e886831c686c3b2f83e441.tar.gz art-537aaf122b93cd72e3e886831c686c3b2f83e441.tar.bz2 |
Merge "Revert "Switch on implicit null pointer and stack overflow checks.""
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/fault_handler.cc | 12 | ||||
-rw-r--r-- | runtime/parsed_options.cc | 2 | ||||
-rw-r--r-- | runtime/runtime.cc | 15 |
3 files changed, 4 insertions, 25 deletions
diff --git a/runtime/fault_handler.cc b/runtime/fault_handler.cc index c457f12..4d7fd0a 100644 --- a/runtime/fault_handler.cc +++ b/runtime/fault_handler.cc @@ -35,13 +35,6 @@ namespace art { // Static fault manger object accessed by signal handler. FaultManager fault_manager; -extern "C" { -void art_sigsegv_fault() { - // Set a breakpoint here to be informed when a SIGSEGV is unhandled by ART. - LOG(ERROR)<< "Caught unknown SIGSEGV in ART fault handler"; -} -} - // Signal handler called on SIGSEGV. static void art_fault_handler(int sig, siginfo_t* info, void* context) { fault_manager.HandleFault(sig, info, context); @@ -86,10 +79,7 @@ void FaultManager::HandleFault(int sig, siginfo_t* info, void* context) { return; } } - - // Allow the user to catch this problem with a simple breakpoint in art_sigsegv_fault. - art_sigsegv_fault(); - + LOG(ERROR)<< "Caught unknown SIGSEGV in ART fault handler"; oldaction_.sa_sigaction(sig, info, context); } diff --git a/runtime/parsed_options.cc b/runtime/parsed_options.cc index 3c14c23..84ca23b 100644 --- a/runtime/parsed_options.cc +++ b/runtime/parsed_options.cc @@ -255,7 +255,7 @@ bool ParsedOptions::Parse(const Runtime::Options& options, bool ignore_unrecogni #ifdef HAVE_ANDROID_OS { char buf[PROP_VALUE_MAX]; - property_get("dalvik.vm.implicit_checks", buf, "null,stack"); + property_get("dalvik.vm.implicit_checks", buf, "none"); std::string checks(buf); std::vector<std::string> checkvec; Split(checks, ',', checkvec); diff --git a/runtime/runtime.cc b/runtime/runtime.cc index d84824a..d78be92 100644 --- a/runtime/runtime.cc +++ b/runtime/runtime.cc @@ -535,20 +535,9 @@ bool Runtime::Init(const Options& raw_options, bool ignore_unrecognized) { GetInstrumentation()->ForceInterpretOnly(); } - bool implicit_checks_supported = false; - switch (kRuntimeISA) { - case kArm: - case kThumb2: - implicit_checks_supported = true; - break; - default: - break; - } - - if (implicit_checks_supported && - (options->explicit_checks_ != (ParsedOptions::kExplicitSuspendCheck | + if (options->explicit_checks_ != (ParsedOptions::kExplicitSuspendCheck | ParsedOptions::kExplicitNullCheck | - ParsedOptions::kExplicitStackOverflowCheck) || kEnableJavaStackTraceHandler)) { + ParsedOptions::kExplicitStackOverflowCheck) || kEnableJavaStackTraceHandler) { fault_manager.Init(); // These need to be in a specific order. The null point check handler must be |