diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2016-11-12 14:09:49 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2016-11-14 23:34:33 +0200 |
commit | 614eabb225a9f62d1dbfe50fe44e7b9db9c0467d (patch) | |
tree | ed0ae264afb6e4dc4b7bc3f3f908281ebd50f220 /src/linked-list.c | |
parent | b92047ed10c4da784c296dfcf09da250b7b637c7 (diff) | |
download | cflow-614eabb225a9f62d1dbfe50fe44e7b9db9c0467d.tar.gz cflow-614eabb225a9f62d1dbfe50fe44e7b9db9c0467d.tar.bz2 |
Include static symbols as root points in inverted graphs.
* src/cflow.h (linked_list_size): New function.
* src/linked-list.c (linked_list_size): New function.
* src/symbol.c (collect_symbols): Include static symbols,
if allowed by sel.
* src/main.c (parse_opt): Exclude static symbols for --xref
Diffstat (limited to 'src/linked-list.c')
-rw-r--r-- | src/linked-list.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/linked-list.c b/src/linked-list.c index 095b63e..3c57bf0 100644 --- a/src/linked-list.c +++ b/src/linked-list.c @@ -14,13 +14,13 @@ You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include <cflow.h> static struct linked_list * -deref_linked_list (struct linked_list **plist) +deref_linked_list(struct linked_list **plist) { if (!*plist) { struct linked_list *list = xmalloc(sizeof(*list)); list->free_data = NULL; list->head = list->tail = NULL; *plist = list; @@ -141,6 +141,19 @@ data_in_list(void *data, struct linked_list *list) for (p = linked_list_head(list); p; p = p->next) if (p->data == data) return 1; return 0; } + +size_t +linked_list_size(struct linked_list *list) +{ + size_t size = 0; + if (list) { + struct linked_list_entry *p; + for (p = linked_list_head(list); p; p = p->next) + size++; + } + return size; +} + |