| Index: runtime/vm/benchmark_test.h
|
| ===================================================================
|
| --- runtime/vm/benchmark_test.h (revision 37090)
|
| +++ runtime/vm/benchmark_test.h (working copy)
|
| @@ -27,9 +27,9 @@
|
|
|
| // The BENCHMARK macro is used for benchmarking a specific functionality
|
| // of the VM
|
| -#define BENCHMARK(name) \
|
| +#define BENCHMARK_HELPER(name, kind) \
|
| void Dart_Benchmark##name(Benchmark* benchmark); \
|
| - static Benchmark kRegister##name(Dart_Benchmark##name, #name); \
|
| + static Benchmark kRegister##name(Dart_Benchmark##name, #name, kind); \
|
| static void Dart_BenchmarkHelper##name(Benchmark* benchmark); \
|
| void Dart_Benchmark##name(Benchmark* benchmark) { \
|
| FLAG_heap_growth_space_ratio = 100; \
|
| @@ -40,7 +40,11 @@
|
| } \
|
| static void Dart_BenchmarkHelper##name(Benchmark* benchmark)
|
|
|
| +#define BENCHMARK(name) BENCHMARK_HELPER(name, "RunTime")
|
|
|
| +#define BENCHMARK_SIZE(name) BENCHMARK_HELPER(name, "CodeSize")
|
| +
|
| +
|
| inline Dart_Handle NewString(const char* str) {
|
| return Dart_NewStringFromCString(str);
|
| }
|
| @@ -50,9 +54,10 @@
|
| public:
|
| typedef void (RunEntry)(Benchmark* benchmark);
|
|
|
| - Benchmark(RunEntry* run, const char* name) :
|
| + Benchmark(RunEntry* run, const char* name, const char* score_kind) :
|
| run_(run),
|
| name_(name),
|
| + score_kind_(score_kind),
|
| score_(0),
|
| isolate_(NULL),
|
| next_(NULL) {
|
| @@ -66,6 +71,7 @@
|
|
|
| // Accessors.
|
| const char* name() const { return name_; }
|
| + const char* score_kind() const { return score_kind_; }
|
| void set_score(intptr_t value) { score_ = value; }
|
| intptr_t score() const { return score_; }
|
| Isolate* isolate() const { return reinterpret_cast<Isolate*>(isolate_); }
|
| @@ -92,6 +98,7 @@
|
|
|
| RunEntry* const run_;
|
| const char* name_;
|
| + const char* score_kind_;
|
| intptr_t score_;
|
| Dart_Isolate isolate_;
|
| Benchmark* next_;
|
|
|