Lines Matching refs:bblock_t
36 struct bblock_t;
60 bblock_link(bblock_t *block, enum bblock_link_kind kind) in bblock_link()
67 struct bblock_t *block;
79 struct bblock_t { struct
81 DECLARE_RALLOC_CXX_OPERATORS(bblock_t)
83 explicit bblock_t(cfg_t *cfg);
85 void add_successor(void *mem_ctx, bblock_t *successor,
87 bool is_predecessor_of(const bblock_t *block,
89 bool is_successor_of(const bblock_t *block,
91 bool can_combine_with(const bblock_t *that) const;
92 void combine_with(bblock_t *that);
100 bblock_t *next();
101 const bblock_t *next() const;
102 bblock_t *prev();
103 const bblock_t *prev() const;
125 bblock_start(struct bblock_t *block) in bblock_start() argument
131 bblock_start_const(const struct bblock_t *block) in bblock_start_const()
137 bblock_end(struct bblock_t *block) in bblock_end()
143 bblock_end_const(const struct bblock_t *block) in bblock_end_const()
148 static inline struct bblock_t *
149 bblock_next(struct bblock_t *block) in bblock_next()
154 return (struct bblock_t *)block->link.next; in bblock_next()
157 static inline const struct bblock_t *
158 bblock_next_const(const struct bblock_t *block) in bblock_next_const()
163 return (const struct bblock_t *)block->link.next; in bblock_next_const()
166 static inline struct bblock_t *
167 bblock_prev(struct bblock_t *block) in bblock_prev()
172 return (struct bblock_t *)block->link.prev; in bblock_prev()
175 static inline const struct bblock_t *
176 bblock_prev_const(const struct bblock_t *block) in bblock_prev_const()
181 return (const struct bblock_t *)block->link.prev; in bblock_prev_const()
185 bblock_starts_with_control_flow(const struct bblock_t *block) in bblock_starts_with_control_flow()
192 bblock_ends_with_control_flow(const struct bblock_t *block) in bblock_ends_with_control_flow()
203 bblock_first_non_control_flow_inst(struct bblock_t *block) in bblock_first_non_control_flow_inst()
216 bblock_last_non_control_flow_inst(struct bblock_t *block) in bblock_last_non_control_flow_inst()
230 bblock_t::start() in start()
236 bblock_t::start() const in start()
242 bblock_t::end() in end()
248 bblock_t::end() const in end()
253 inline bblock_t *
254 bblock_t::next() in next()
259 inline const bblock_t *
260 bblock_t::next() const in next()
265 inline bblock_t *
266 bblock_t::prev() in prev()
271 inline const bblock_t *
272 bblock_t::prev() const in prev()
278 bblock_t::starts_with_control_flow() const in starts_with_control_flow()
284 bblock_t::ends_with_control_flow() const in ends_with_control_flow()
290 bblock_t::first_non_control_flow_inst() in first_non_control_flow_inst()
296 bblock_t::last_non_control_flow_inst() in last_non_control_flow_inst()
309 void remove_block(bblock_t *block);
311 bblock_t *first_block();
312 const bblock_t *first_block() const;
313 bblock_t *last_block();
314 const bblock_t *last_block() const;
316 bblock_t *new_block();
317 void set_next_block(bblock_t **cur, bblock_t *block, int ip);
328 struct bblock_t **blocks;
332 static inline struct bblock_t *
335 return (struct bblock_t *)exec_list_get_head(&cfg->block_list); in cfg_first_block()
338 static inline const struct bblock_t *
341 return (const struct bblock_t *)exec_list_get_head_const(&cfg->block_list); in cfg_first_block_const()
344 static inline struct bblock_t *
347 return (struct bblock_t *)exec_list_get_tail(&cfg->block_list); in cfg_last_block()
350 static inline const struct bblock_t *
353 return (const struct bblock_t *)exec_list_get_tail_const(&cfg->block_list); in cfg_last_block_const()
357 inline bblock_t *
363 const inline bblock_t *
369 inline bblock_t *
375 const inline bblock_t *
397 foreach_list_typed (bblock_t, __block, link, &(__cfg)->block_list)
400 foreach_list_typed_reverse (bblock_t, __block, link, &(__cfg)->block_list)
403 foreach_list_typed_safe (bblock_t, __block, link, &(__cfg)->block_list)
406 foreach_list_typed_reverse_safe (bblock_t, __block, link, &(__cfg)->block_list)
456 const bblock_t *
457 parent(const bblock_t *b) const in parent()
463 bblock_t *
464 parent(bblock_t *b) const in parent()
470 bblock_t *
471 intersect(bblock_t *b1, bblock_t *b2) const;
478 bblock_t **parents;