map.h (7c8c03bfc7b9f5211d8a69eab7fee99c9fb4f449) map.h (d80406453ad4a69932dc17a617d5b7bc7ae80b8f)
1#ifndef __PERF_MAP_H
2#define __PERF_MAP_H
3
4#include <linux/refcount.h>
5#include <linux/compiler.h>
6#include <linux/list.h>
7#include <linux/rbtree.h>
8#include <pthread.h>

--- 116 unchanged lines hidden (view full) ---

125 * that have the given name
126 *
127 * @map: the 'struct map *' in which symbols itereated
128 * @sym_name: the symbol name
129 * @pos: the 'struct symbol *' to use as a loop cursor
130 */
131#define __map__for_each_symbol_by_name(map, sym_name, pos) \
132 for (pos = map__find_symbol_by_name(map, sym_name); \
1#ifndef __PERF_MAP_H
2#define __PERF_MAP_H
3
4#include <linux/refcount.h>
5#include <linux/compiler.h>
6#include <linux/list.h>
7#include <linux/rbtree.h>
8#include <pthread.h>

--- 116 unchanged lines hidden (view full) ---

125 * that have the given name
126 *
127 * @map: the 'struct map *' in which symbols itereated
128 * @sym_name: the symbol name
129 * @pos: the 'struct symbol *' to use as a loop cursor
130 */
131#define __map__for_each_symbol_by_name(map, sym_name, pos) \
132 for (pos = map__find_symbol_by_name(map, sym_name); \
133 pos && arch__compare_symbol_names(pos->name, sym_name) == 0; \
133 pos && \
134 !symbol__match_symbol_name(pos->name, sym_name, \
135 SYMBOL_TAG_INCLUDE__DEFAULT_ONLY); \
134 pos = symbol__next_by_name(pos))
135
136#define map__for_each_symbol_by_name(map, sym_name, pos) \
137 __map__for_each_symbol_by_name(map, sym_name, (pos))
138
136 pos = symbol__next_by_name(pos))
137
138#define map__for_each_symbol_by_name(map, sym_name, pos) \
139 __map__for_each_symbol_by_name(map, sym_name, (pos))
140
139int arch__compare_symbol_names(const char *namea, const char *nameb);
140void map__init(struct map *map, enum map_type type,
141 u64 start, u64 end, u64 pgoff, struct dso *dso);
142struct map *map__new(struct machine *machine, u64 start, u64 len,
143 u64 pgoff, u32 pid, u32 d_maj, u32 d_min, u64 ino,
144 u64 ino_gen, u32 prot, u32 flags,
145 char *filename, enum map_type type, struct thread *thread);
146struct map *map__new2(u64 start, struct dso *dso, enum map_type type);
147void map__delete(struct map *map);

--- 113 unchanged lines hidden ---
141void map__init(struct map *map, enum map_type type,
142 u64 start, u64 end, u64 pgoff, struct dso *dso);
143struct map *map__new(struct machine *machine, u64 start, u64 len,
144 u64 pgoff, u32 pid, u32 d_maj, u32 d_min, u64 ino,
145 u64 ino_gen, u32 prot, u32 flags,
146 char *filename, enum map_type type, struct thread *thread);
147struct map *map__new2(u64 start, struct dso *dso, enum map_type type);
148void map__delete(struct map *map);

--- 113 unchanged lines hidden ---