diff options
author | Ankur Saini <arsenic@sourceware.org> | 2021-07-25 14:47:53 +0530 |
---|---|---|
committer | Ankur Saini <arsenic@sourceware.org> | 2021-07-29 08:37:49 +0530 |
commit | e8de5bad250909c9599da49d07f09fb9a8cabd0f (patch) | |
tree | d48f853a61c2594bb22af5bb39a55a41f7be42b0 /gcc/tree-ssa-threadedge.c | |
parent | 7d11da87a1e3c7e0d274788ca43519513dae4bfe (diff) | |
download | gcc-e8de5bad250909c9599da49d07f09fb9a8cabd0f.zip gcc-e8de5bad250909c9599da49d07f09fb9a8cabd0f.tar.gz gcc-e8de5bad250909c9599da49d07f09fb9a8cabd0f.tar.bz2 |
analyzer: : Refactor callstring to work with pairs of supernodes.
2021-07-25 Ankur Saini <arsenic@sourceware.org>
gcc/analyzer/ChangeLog:
* call-string.cc (call_string::element_t::operator==): New operator.
(call_String::element_t::operator!=): New operator.
(call_string::element_t::get_caller_function): New function.
(call_string::element_t::get_callee_function): New function.
(call_string::call_string): Refactor to Initialise m_elements.
(call_string::operator=): Refactor to work with m_elements.
(call_string::operator==): Likewise.
(call_string::to_json): Likewise.
(call_string::hash): Refactor to hash e.m_caller.
(call_string::push_call): Refactor to work with m_elements.
(call_string::push_call): New overload to push call via supernodes.
(call_string::pop): Refactor to work with m_elements.
(call_string::calc_recursion_depth): Likewise.
(call_string::cmp): Likewise.
(call_string::validate): Likewise.
(call_string::operator[]): Likewise.
* call-string.h (class supernode): New forward decl.
(struct call_string::element_t): New struct.
(call_string::call_string): Refactor to initialise m_elements.
(call_string::bool empty_p): Refactor to work with m_elements.
(call_string::get_callee_node): New decl.
(call_string::get_caller_node): New decl.
(m_elements): Replaces m_return_edges.
* program-point.cc (program_point::get_function_at_depth): Refactor to
work with new call-string format.
(program_point::validate): Likewise.
(program_point::on_edge): Likewise.
Diffstat (limited to 'gcc/tree-ssa-threadedge.c')
0 files changed, 0 insertions, 0 deletions