diff options
author | Mingyao Yang <mingyao@google.com> | 2014-04-18 16:49:39 -0700 |
---|---|---|
committer | Mingyao Yang <mingyao@google.com> | 2014-04-18 16:51:15 -0700 |
commit | 42d65c52bbf4a354605389a759190e793787f692 (patch) | |
tree | 98dd633038cbc1ae0ccdda3de1f73e79a9ab4049 /runtime | |
parent | fa25af3e3410537e86b485682d519dafbad01753 (diff) | |
download | art-42d65c52bbf4a354605389a759190e793787f692.zip art-42d65c52bbf4a354605389a759190e793787f692.tar.gz art-42d65c52bbf4a354605389a759190e793787f692.tar.bz2 |
Add an option to specify a list of methods for LIR dumping.
An example would be:
--runtime-arg -verbose-methods:Array.checkRange32,Array.checkRange64
or
"-verbose-methods:void Array.checkRange32,void Array.checkRange64"
Change-Id: I61c1eb3b2eb4b24126a9264261c27889d53cc6bd
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/base/logging.cc | 2 | ||||
-rw-r--r-- | runtime/base/logging.h | 3 | ||||
-rw-r--r-- | runtime/parsed_options.cc | 3 |
3 files changed, 8 insertions, 0 deletions
diff --git a/runtime/base/logging.cc b/runtime/base/logging.cc index 46b8ff2..730a2c2 100644 --- a/runtime/base/logging.cc +++ b/runtime/base/logging.cc @@ -26,6 +26,8 @@ namespace art { LogVerbosity gLogVerbosity; +std::vector<std::string> gVerboseMethods; + unsigned int gAborting = 0; static LogSeverity gMinimumLogSeverity = INFO; diff --git a/runtime/base/logging.h b/runtime/base/logging.h index fcec733..bd5ae85 100644 --- a/runtime/base/logging.h +++ b/runtime/base/logging.h @@ -22,6 +22,7 @@ #include <iostream> // NOLINT #include <sstream> #include <signal.h> +#include <vector> #include "base/macros.h" #include "log_severity.h" #include "UniquePtr.h" @@ -299,6 +300,8 @@ struct LogVerbosity { extern LogVerbosity gLogVerbosity; +extern std::vector<std::string> gVerboseMethods; + // Used on fatal exit. Prevents recursive aborts. Allows us to disable // some error checking to ensure fatal shutdown makes forward progress. extern unsigned int gAborting; diff --git a/runtime/parsed_options.cc b/runtime/parsed_options.cc index 57d32bb..e11435d 100644 --- a/runtime/parsed_options.cc +++ b/runtime/parsed_options.cc @@ -447,6 +447,9 @@ bool ParsedOptions::Parse(const Runtime::Options& options, bool ignore_unrecogni return false; } } + } else if (StartsWith(option, "-verbose-methods:")) { + gLogVerbosity.compiler = false; + Split(option.substr(strlen("-verbose-methods:")), ',', gVerboseMethods); } else if (StartsWith(option, "-Xlockprofthreshold:")) { if (!ParseUnsignedInteger(option, ':', &lock_profiling_threshold_)) { return false; |