[Mesa-dev] [PATCH 12/20] i965/cfg: Add macros to iterate through a block given a starting point.

Matt Turner mattst88 at gmail.com
Tue Sep 2 21:34:23 PDT 2014


---
 src/mesa/drivers/dri/i965/brw_cfg.h | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/brw_cfg.h b/src/mesa/drivers/dri/i965/brw_cfg.h
index ca6a2ac..1498f1e 100644
--- a/src/mesa/drivers/dri/i965/brw_cfg.h
+++ b/src/mesa/drivers/dri/i965/brw_cfg.h
@@ -142,4 +142,14 @@ struct cfg_t {
         __inst != __block->start->prev;                        \
         __inst = (__type *)__inst->prev)
 
+#define foreach_inst_in_block_starting_from(__type, __scan_inst, __inst, __block) \
+   for (__type *__scan_inst = (__type *)__inst->next;          \
+        __scan_inst != __block->end->next;                     \
+        __scan_inst = (__type *)__scan_inst->next)
+
+#define foreach_inst_in_block_reverse_starting_from(__type, __scan_inst, __inst, __block) \
+   for (__type *__scan_inst = (__type *)__inst->prev;          \
+        __scan_inst != __block->start->prev;                   \
+        __scan_inst = (__type *)__scan_inst->prev)
+
 #endif /* BRW_CFG_H */
-- 
1.8.5.5



More information about the mesa-dev mailing list