summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaul Berry <stereotype441@gmail.com>2013-08-21 07:53:42 -0700
committerPaul Berry <stereotype441@gmail.com>2013-08-23 11:02:40 -0700
commite556286802811b4b99c692d1ff5197f8ee1f011b (patch)
treed4e21486b27ab1fc74f465b31d1ed983e1457992 /src
parent5fb13d871e062354a77a427b3a3fe7f3d6908e5a (diff)
i965: Make brw_{shader,vec4}.h safe to include from C.
The patch that follows will move the definition of struct brw_vec4_prog_key from brw_vs.h to brw_vec4.h, making it necessary for brw_vs.h to include brw_vec4.h (because brw_vs.h defines struct brw_vs_prog_key, which contains brw_vec4_prog_key as a member). Since brw_vs.h is included from C source files, that means that brw_vec4.h will need to be safe to include from C. Same for brw_shader.h, since it is included by brw_vec4.h. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Matt Turner <mattst88@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/i965/brw_shader.h7
-rw-r--r--src/mesa/drivers/dri/i965/brw_vec4.h10
2 files changed, 15 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_shader.h b/src/mesa/drivers/dri/i965/brw_shader.h
index e7d3fb6e019..55769ff2e39 100644
--- a/src/mesa/drivers/dri/i965/brw_shader.h
+++ b/src/mesa/drivers/dri/i965/brw_shader.h
@@ -38,6 +38,8 @@ enum register_file {
UNIFORM, /* prog_data->params[reg] */
};
+#ifdef __cplusplus
+
class backend_instruction : public exec_node {
public:
bool is_tex();
@@ -71,8 +73,11 @@ public:
void dump_instructions();
};
+uint32_t brw_texture_offset(ir_constant *offset);
+
+#endif /* __cplusplus */
+
int brw_type_for_base_type(const struct glsl_type *type);
uint32_t brw_conditional_for_comparison(unsigned int op);
uint32_t brw_math_function(enum opcode op);
-uint32_t brw_texture_offset(ir_constant *offset);
const char *brw_instruction_name(enum opcode op);
diff --git a/src/mesa/drivers/dri/i965/brw_vec4.h b/src/mesa/drivers/dri/i965/brw_vec4.h
index b331372d16c..e46d2b170f1 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4.h
+++ b/src/mesa/drivers/dri/i965/brw_vec4.h
@@ -29,10 +29,16 @@
#include "main/compiler.h"
#include "program/hash_table.h"
+#ifdef __cplusplus
extern "C" {
+#endif
+
#include "brw_context.h"
#include "brw_eu.h"
-};
+
+#ifdef __cplusplus
+}; /* extern "C" */
+#endif
#include "glsl/ir.h"
@@ -40,6 +46,7 @@ struct brw_vec4_compile;
struct brw_vs_compile;
struct brw_vec4_prog_key;
+#ifdef __cplusplus
namespace brw {
class dst_reg;
@@ -617,5 +624,6 @@ private:
};
} /* namespace brw */
+#endif /* __cplusplus */
#endif /* BRW_VEC4_H */