JSONCompilerLogger is a basic implementation of the CompilerLogger interface that saves logged data, then logs it all in JSON format in emit_to_stream().
More...
#include <CompilerLogger.h>
|
| JSONCompilerLogger ()=default |
|
| JSONCompilerLogger (const std::string &generator_name, const std::string &function_name, const std::string &autoscheduler_name, const Target &target, const std::string &generator_args, bool obfuscate_exprs) |
|
void | record_matched_simplifier_rule (const std::string &rulename, Expr expr) override |
| Record when a particular simplifier rule matches.
|
|
void | record_non_monotonic_loop_var (const std::string &loop_var, Expr expr) override |
| Record when an expression is non-monotonic in a loop variable.
|
|
void | record_failed_to_prove (Expr failed_to_prove, Expr original_expr) override |
| Record when can_prove() fails, but cannot find a counterexample.
|
|
void | record_object_code_size (uint64_t bytes) override |
| Record total size (in bytes) of final generated object code (e.g., file size of .o output).
|
|
void | record_compilation_time (Phase phase, double duration) override |
| Record the compilation time (in seconds) for a given phase.
|
|
std::ostream & | emit_to_stream (std::ostream &o) override |
| Emit all the gathered data to the given stream.
|
|
| CompilerLogger ()=default |
|
virtual | ~CompilerLogger ()=default |
|
JSONCompilerLogger is a basic implementation of the CompilerLogger interface that saves logged data, then logs it all in JSON format in emit_to_stream().
Definition at line 76 of file CompilerLogger.h.
◆ JSONCompilerLogger() [1/2]
Halide::Internal::JSONCompilerLogger::JSONCompilerLogger |
( |
| ) |
|
|
default |
◆ JSONCompilerLogger() [2/2]
Halide::Internal::JSONCompilerLogger::JSONCompilerLogger |
( |
const std::string & | generator_name, |
|
|
const std::string & | function_name, |
|
|
const std::string & | autoscheduler_name, |
|
|
const Target & | target, |
|
|
const std::string & | generator_args, |
|
|
bool | obfuscate_exprs ) |
◆ record_matched_simplifier_rule()
void Halide::Internal::JSONCompilerLogger::record_matched_simplifier_rule |
( |
const std::string & | rulename, |
|
|
Expr | expr ) |
|
overridevirtual |
◆ record_non_monotonic_loop_var()
void Halide::Internal::JSONCompilerLogger::record_non_monotonic_loop_var |
( |
const std::string & | loop_var, |
|
|
Expr | expr ) |
|
overridevirtual |
◆ record_failed_to_prove()
void Halide::Internal::JSONCompilerLogger::record_failed_to_prove |
( |
Expr | failed_to_prove, |
|
|
Expr | original_expr ) |
|
overridevirtual |
◆ record_object_code_size()
void Halide::Internal::JSONCompilerLogger::record_object_code_size |
( |
uint64_t | bytes | ) |
|
|
overridevirtual |
◆ record_compilation_time()
void Halide::Internal::JSONCompilerLogger::record_compilation_time |
( |
Phase | phase, |
|
|
double | duration ) |
|
overridevirtual |
◆ emit_to_stream()
std::ostream & Halide::Internal::JSONCompilerLogger::emit_to_stream |
( |
std::ostream & | o | ) |
|
|
overridevirtual |
◆ obfuscate()
void Halide::Internal::JSONCompilerLogger::obfuscate |
( |
| ) |
|
|
protected |
◆ emit()
void Halide::Internal::JSONCompilerLogger::emit |
( |
| ) |
|
|
protected |
◆ generator_name
const std::string Halide::Internal::JSONCompilerLogger::generator_name |
|
protected |
◆ function_name
const std::string Halide::Internal::JSONCompilerLogger::function_name |
|
protected |
◆ autoscheduler_name
const std::string Halide::Internal::JSONCompilerLogger::autoscheduler_name |
|
protected |
◆ target
const Target Halide::Internal::JSONCompilerLogger::target = Target() |
|
protected |
◆ generator_args
const std::string Halide::Internal::JSONCompilerLogger::generator_args |
|
protected |
◆ obfuscate_exprs
const bool Halide::Internal::JSONCompilerLogger::obfuscate_exprs {false} |
|
protected |
◆ matched_simplifier_rules
std::map<std::string, std::vector<Expr> > Halide::Internal::JSONCompilerLogger::matched_simplifier_rules |
|
protected |
◆ non_monotonic_loop_vars
std::map<std::string, std::vector<Expr> > Halide::Internal::JSONCompilerLogger::non_monotonic_loop_vars |
|
protected |
◆ failed_to_prove_exprs
std::vector<std::pair<Expr, Expr> > Halide::Internal::JSONCompilerLogger::failed_to_prove_exprs |
|
protected |
◆ object_code_size
uint64_t Halide::Internal::JSONCompilerLogger::object_code_size {0} |
|
protected |
◆ compilation_time
std::map<Phase, double> Halide::Internal::JSONCompilerLogger::compilation_time |
|
protected |
The documentation for this class was generated from the following file: