21#ifndef GCC_ANALYZER_CHECKER_EVENT_H
22#define GCC_ANALYZER_CHECKER_EVENT_H
482 return label_text::borrow (
"...to here");
558 return label_text::borrow (
"...to here");
694 m_sm (
sm), m_var (var), m_state (
state)
state
Definition cfgbuild.cc:168
Definition checker-event.h:489
label_text get_desc(bool can_colorize) const override
meaning get_meaning() const override
call_event(const exploded_edge &eedge, const event_loc_info &loc_info)
bool is_call_p() const final override
tree get_callee_fndecl() const
const supernode * m_dest_snode
Definition checker-event.h:504
tree get_caller_fndecl() const
const supernode * m_src_snode
Definition checker-event.h:503
Definition supergraph.h:393
Definition checker-event.h:431
meaning get_meaning() const override
cfg_edge_event(enum event_kind kind, const exploded_edge &eedge, const event_loc_info &loc_info)
const cfg_superedge & get_cfg_superedge() const
Definition supergraph.h:515
Definition checker-event.h:101
virtual void prepare_for_emission(checker_path *, pending_diagnostic *pd, diagnostic_event_id_t emission_id)
checker_event(enum event_kind kind, const event_loc_info &loc_info)
virtual bool is_return_p() const
Definition checker-event.h:134
tree m_effective_fndecl
Definition checker-event.h:156
diagnostic_event_id_t m_emission_id
Definition checker-event.h:160
int get_stack_depth() const final override
Definition checker-event.h:107
location_t m_loc
Definition checker-event.h:154
const diagnostic_event_id_t * get_id_ptr() const
Definition checker-event.h:137
enum event_kind m_kind
Definition checker-event.h:152
tree m_original_fndecl
Definition checker-event.h:155
virtual bool is_function_entry_p() const
Definition checker-event.h:133
const logical_location * get_logical_location() const final override
Definition checker-event.h:108
tree get_fndecl() const final override
Definition checker-event.h:106
tree_logical_location m_logical_loc
Definition checker-event.h:161
void set_location(location_t loc)
Definition checker-event.h:145
pending_diagnostic * m_pending_diagnostic
Definition checker-event.h:159
bool connect_to_next_event_p() const override
Definition checker-event.h:116
int get_original_stack_depth() const
Definition checker-event.h:127
location_t get_location() const final override
Definition checker-event.h:105
void maybe_add_sarif_properties(sarif_object &thread_flow_loc_obj) const override
virtual bool is_call_p() const
Definition checker-event.h:132
int m_effective_depth
Definition checker-event.h:158
int m_original_depth
Definition checker-event.h:157
diagnostic_thread_id_t get_thread_id() const final override
Definition checker-event.h:117
meaning get_meaning() const override
void dump(pretty_printer *pp) const
Definition checker-path.h:31
Definition checker-event.h:192
custom_event(const event_loc_info &loc_info)
Definition checker-event.h:194
Definition checker-event.h:168
label_text get_desc(bool) const final override
char * m_desc
Definition checker-event.h:185
~debug_event()
Definition checker-event.h:177
debug_event(const event_loc_info &loc_info, const char *desc)
Definition checker-event.h:171
Definition checker-event.h:472
label_text get_desc(bool) const final override
Definition checker-event.h:480
end_cfg_edge_event(const exploded_edge &eedge, const event_loc_info &loc_info)
Definition checker-event.h:474
Definition checker-event.h:549
label_text get_desc(bool) const final override
Definition checker-event.h:556
end_consolidated_cfg_edges_event(const event_loc_info &loc_info)
Definition checker-event.h:551
Definition exploded-graph.h:381
Definition exploded-graph.h:203
Definition checker-event.h:341
function_entry_event(const program_point &dst_point)
meaning get_meaning() const override
label_text get_desc(bool can_colorize) const override
bool is_function_entry_p() const final override
Definition checker-event.h:353
function_entry_event(const event_loc_info &loc_info)
Definition checker-event.h:343
Definition checker-event.h:566
label_text get_desc(bool) const final override
meaning get_meaning() const override
inlined_call_event(location_t loc, tree apparent_callee_fndecl, tree apparent_caller_fndecl, int actual_depth, int stack_depth_adjustment)
Definition checker-event.h:568
tree m_apparent_callee_fndecl
Definition checker-event.h:587
tree m_apparent_caller_fndecl
Definition checker-event.h:588
Definition pending-diagnostic.h:208
Definition checker-event.h:203
label_text get_desc(bool) const final override
~precanned_custom_event()
Definition checker-event.h:211
char * m_desc
Definition checker-event.h:219
precanned_custom_event(const event_loc_info &loc_info, const char *desc)
Definition checker-event.h:205
Definition program-point.h:175
Definition program-state.h:203
const function * get_current_function() const
Definition checker-event.h:304
tree m_capacity
Definition checker-event.h:315
region_creation_event_allocation_size(tree capacity, const event_loc_info &loc_info)
Definition checker-event.h:306
label_text get_desc(bool can_colorize) const final override
Definition checker-event.h:283
region_creation_event_capacity(tree capacity, const event_loc_info &loc_info)
Definition checker-event.h:285
label_text get_desc(bool can_colorize) const final override
tree m_capacity
Definition checker-event.h:296
Definition checker-event.h:322
region_creation_event_debug(const region *reg, tree capacity, const event_loc_info &loc_info)
Definition checker-event.h:324
tree m_capacity
Definition checker-event.h:335
const region * m_reg
Definition checker-event.h:334
label_text get_desc(bool can_colorize) const final override
Definition checker-event.h:263
enum memory_space m_mem_space
Definition checker-event.h:275
region_creation_event_memory_space(enum memory_space mem_space, const event_loc_info &loc_info)
Definition checker-event.h:265
label_text get_desc(bool can_colorize) const final override
Definition checker-event.h:253
region_creation_event(const event_loc_info &loc_info)
Definition checker-event.h:510
return_event(const exploded_edge &eedge, const event_loc_info &loc_info)
bool is_return_p() const final override
label_text get_desc(bool can_colorize) const final override
meaning get_meaning() const override
Definition checker-event.h:622
tree get_longjmp_caller() const
rewind_event(const exploded_edge *eedge, enum event_kind kind, const event_loc_info &loc_info, const rewind_info_t *rewind_info)
tree get_setjmp_caller() const
const exploded_edge * m_eedge
Definition checker-event.h:636
const rewind_info_t * m_rewind_info
Definition checker-event.h:633
const exploded_edge * get_eedge() const
Definition checker-event.h:626
Definition checker-event.h:643
rewind_from_longjmp_event(const exploded_edge *eedge, const event_loc_info &loc_info, const rewind_info_t *rewind_info)
Definition checker-event.h:645
label_text get_desc(bool can_colorize) const final override
Definition exploded-graph.h:457
Definition checker-event.h:660
void prepare_for_emission(checker_path *path, pending_diagnostic *pd, diagnostic_event_id_t emission_id) final override
label_text get_desc(bool can_colorize) const final override
rewind_to_setjmp_event(const exploded_edge *eedge, const event_loc_info &loc_info, const rewind_info_t *rewind_info)
Definition checker-event.h:662
diagnostic_event_id_t m_original_setjmp_event_id
Definition checker-event.h:677
Definition checker-event.h:594
setjmp_event(const event_loc_info &loc_info, const exploded_node *enode, const gcall *setjmp_call)
Definition checker-event.h:596
const gcall * m_setjmp_call
Definition checker-event.h:612
void prepare_for_emission(checker_path *path, pending_diagnostic *pd, diagnostic_event_id_t emission_id) final override
const exploded_node * m_enode
Definition checker-event.h:611
label_text get_desc(bool can_colorize) const final override
Definition checker-event.h:446
bool connect_to_next_event_p() const final override
Definition checker-event.h:455
static label_text maybe_describe_condition(bool can_colorize, tree lhs, enum tree_code op, tree rhs)
start_cfg_edge_event(const exploded_edge &eedge, const event_loc_info &loc_info)
Definition checker-event.h:448
label_text get_desc(bool can_colorize) const override
label_text maybe_describe_condition(bool can_colorize) const
static bool should_print_expr_p(tree)
Definition checker-event.h:528
bool connect_to_next_event_p() const final override
Definition checker-event.h:539
label_text get_desc(bool can_colorize) const final override
meaning get_meaning() const override
start_consolidated_cfg_edges_event(const event_loc_info &loc_info, bool edge_sense)
Definition checker-event.h:530
bool m_edge_sense
Definition checker-event.h:542
Definition checker-event.h:359
state_machine::state_t m_to
Definition checker-event.h:386
state_machine::state_t m_from
Definition checker-event.h:385
const svalue * m_origin
Definition checker-event.h:387
label_text get_desc(bool can_colorize) const final override
state_change_event(const supernode *node, const gimple *stmt, int stack_depth, const state_machine &sm, const svalue *sval, state_machine::state_t from, state_machine::state_t to, const svalue *origin, const program_state &dst_state, const exploded_node *enode)
const exploded_node * get_exploded_node() const
Definition checker-event.h:379
meaning get_meaning() const override
const supernode * m_node
Definition checker-event.h:381
program_state m_dst_state
Definition checker-event.h:388
const state_machine & m_sm
Definition checker-event.h:383
const svalue * m_sval
Definition checker-event.h:384
const exploded_node * m_enode
Definition checker-event.h:389
const gimple * m_stmt
Definition checker-event.h:382
const function * get_dest_function() const
Definition checker-event.h:374
Definition checker-event.h:226
statement_event(const gimple *stmt, tree fndecl, int depth, const program_state &dst_state)
label_text get_desc(bool) const final override
const gimple *const m_stmt
Definition checker-event.h:233
const program_state m_dst_state
Definition checker-event.h:234
Definition checker-event.h:396
state_machine::state_t m_critical_state
Definition checker-event.h:423
superedge_event(enum event_kind kind, const exploded_edge &eedge, const event_loc_info &loc_info)
const callgraph_superedge & get_callgraph_superedge() const
tree m_var
Definition checker-event.h:422
const exploded_edge & m_eedge
Definition checker-event.h:420
bool should_filter_p(int verbosity) const
void record_critical_state(tree var, state_machine::state_t state)
Definition checker-event.h:405
void maybe_add_sarif_properties(sarif_object &thread_flow_loc_obj) const override
const superedge * m_sedge
Definition checker-event.h:421
Definition supergraph.h:314
Definition supergraph.h:235
Definition checker-event.h:686
tree m_var
Definition checker-event.h:706
const exploded_node * get_exploded_node() const
Definition checker-event.h:701
const state_machine * m_sm
Definition checker-event.h:705
meaning get_meaning() const override
const exploded_node * m_enode
Definition checker-event.h:704
label_text get_desc(bool can_colorize) const final override
state_machine::state_t m_state
Definition checker-event.h:707
warning_event(const event_loc_info &loc_info, const exploded_node *enode, const state_machine *sm, tree var, state_machine::state_t state)
Definition checker-event.h:688
Definition diagnostic-event-id.h:37
Definition diagnostic-path.h:70
Definition logical-location.h:52
Definition pretty-print.h:244
Definition diagnostic-format-sarif.h:42
Definition tree-logical-location.h:42
union tree_node * tree
Definition coretypes.h:97
unsigned diagnostic_thread_id_t
Definition diagnostic-event-id.h:64
void final(rtx_insn *first, FILE *file, int optimize_p)
Definition final.cc:2002
tree_code
Definition genmatch.cc:347
T * ggc_alloc(ALONE_CXX_MEM_STAT_INFO)
Definition ggc.h:184
Definition access-diagram.h:30
event_kind
Definition checker-event.h:46
@ EK_STATE_CHANGE
Definition checker-event.h:52
@ EK_END_CONSOLIDATED_CFG_EDGES
Definition checker-event.h:58
@ EK_REWIND_TO_SETJMP
Definition checker-event.h:62
@ EK_SETJMP
Definition checker-event.h:60
@ EK_WARNING
Definition checker-event.h:63
@ EK_STMT
Definition checker-event.h:49
@ EK_CALL_EDGE
Definition checker-event.h:55
@ EK_FUNCTION_ENTRY
Definition checker-event.h:51
@ EK_CUSTOM
Definition checker-event.h:48
@ EK_START_CONSOLIDATED_CFG_EDGES
Definition checker-event.h:57
@ EK_START_CFG_EDGE
Definition checker-event.h:53
@ EK_DEBUG
Definition checker-event.h:47
@ EK_REWIND_FROM_LONGJMP
Definition checker-event.h:61
@ EK_RETURN_EDGE
Definition checker-event.h:56
@ EK_INLINED_CALL
Definition checker-event.h:59
@ EK_REGION_CREATION
Definition checker-event.h:50
@ EK_END_CFG_EDGE
Definition checker-event.h:54
const char * event_kind_to_string(enum event_kind ek)
memory_space
Definition region.h:31
Definition checker-event.h:32
location_t m_loc
Definition checker-event.h:37
event_loc_info(location_t loc, tree fndecl, int depth)
Definition checker-event.h:33
tree m_fndecl
Definition checker-event.h:38
int m_depth
Definition checker-event.h:39
Definition diagnostic-path.h:114
Definition function.h:249
Definition genautomata.cc:669
#define NULL
Definition system.h:50
#define gcc_assert(EXPR)
Definition system.h:821