i965/cfg: Make brw_cfg.h closer to C-includable.
authorMatt Turner <mattst88@gmail.com>
Mon, 12 May 2014 16:54:15 +0000 (09:54 -0700)
committerMatt Turner <mattst88@gmail.com>
Thu, 15 May 2014 22:45:40 +0000 (15:45 -0700)
Only bblock_link's inheritance left.

Acked-by: Eric Anholt <eric@anholt.net>
src/mesa/drivers/dri/i965/brw_cfg.h

index 5911107..0a88d25 100644 (file)
 
 #include "brw_shader.h"
 
-class bblock_t;
+struct bblock_t;
+
+struct bblock_link : public exec_node {
+#ifdef __cplusplus
+   DECLARE_RALLOC_CXX_OPERATORS(bblock_link)
 
-class bblock_link : public exec_node {
-public:
    bblock_link(bblock_t *block)
       : block(block)
    {
    }
+#endif
 
-   bblock_t *block;
+   struct bblock_t *block;
 };
 
-class bblock_t {
-public:
+#ifndef __cplusplus
+struct backend_instruction;
+#endif
+
+struct bblock_t {
+#ifdef __cplusplus
    DECLARE_RALLOC_CXX_OPERATORS(bblock_t)
 
    bblock_t();
 
    void add_successor(void *mem_ctx, bblock_t *successor);
    void dump(backend_visitor *v);
+#endif
 
-   backend_instruction *start;
-   backend_instruction *end;
+   struct backend_instruction *start;
+   struct backend_instruction *end;
 
    int start_ip;
    int end_ip;
 
-   exec_list parents;
-   exec_list children;
+   struct exec_list parents;
+   struct exec_list children;
    int block_num;
 
    /* If the current basic block ends in an IF, ELSE, or ENDIF instruction,
@@ -68,11 +76,12 @@ public:
     *
     * Otherwise they are NULL.
     */
-   backend_instruction *if_inst;
-   backend_instruction *else_inst;
-   backend_instruction *endif_inst;
+   struct backend_instruction *if_inst;
+   struct backend_instruction *else_inst;
+   struct backend_instruction *endif_inst;
 };
 
+#ifdef __cplusplus
 class cfg_t {
 public:
    DECLARE_RALLOC_CXX_OPERATORS(cfg_t)
@@ -93,5 +102,6 @@ public:
    bblock_t **blocks;
    int num_blocks;
 };
+#endif
 
 #endif /* BRW_CFG_H */