[Mesa-dev] [PATCH 6/7] glsl: Hide many classes local to individual .cpp files in anon namespaces.
Eric Anholt
eric at anholt.net
Fri Sep 20 18:52:24 PDT 2013
This gives the compiler the chance to inline and not export class symbols
even in the absence of LTO. Saves about 60kb on disk.
---
src/glsl/builtin_functions.cpp | 4 ++++
src/glsl/ir_function_detect_recursion.cpp | 4 ++++
src/glsl/ir_import_prototypes.cpp | 3 +++
src/glsl/ir_reader.cpp | 4 ++++
src/glsl/ir_set_program_inouts.cpp | 4 ++++
src/glsl/ir_validate.cpp | 3 +++
src/glsl/link_functions.cpp | 3 +++
src/glsl/link_uniform_blocks.cpp | 4 ++++
src/glsl/link_uniforms.cpp | 4 ++++
src/glsl/link_varyings.cpp | 2 ++
src/glsl/linker.cpp | 3 +++
src/glsl/loop_analysis.cpp | 2 ++
src/glsl/loop_controls.cpp | 2 ++
src/glsl/loop_unroll.cpp | 3 +++
src/glsl/lower_clip_distance.cpp | 3 +++
src/glsl/lower_discard.cpp | 3 +++
src/glsl/lower_discard_flow.cpp | 4 ++++
src/glsl/lower_if_to_cond_assign.cpp | 4 ++++
src/glsl/lower_instructions.cpp | 4 ++++
src/glsl/lower_jumps.cpp | 4 ++++
src/glsl/lower_mat_op_to_vec.cpp | 4 ++++
src/glsl/lower_named_interface_blocks.cpp | 4 ++++
src/glsl/lower_output_reads.cpp | 4 ++++
src/glsl/lower_packed_varyings.cpp | 4 ++++
src/glsl/lower_texture_projection.cpp | 4 ++++
src/glsl/lower_variable_index_to_cond_assign.cpp | 3 +++
src/glsl/lower_vec_index_to_cond_assign.cpp | 4 ++++
src/glsl/lower_vec_index_to_swizzle.cpp | 4 ++++
src/glsl/lower_vector.cpp | 4 ++++
src/glsl/lower_vector_insert.cpp | 3 +++
src/glsl/opt_array_splitting.cpp | 5 +++++
src/glsl/opt_dead_builtin_varyings.cpp | 2 ++
src/mesa/program/ir_to_mesa.cpp | 16 ++++++++++++++--
33 files changed, 126 insertions(+), 2 deletions(-)
diff --git a/src/glsl/builtin_functions.cpp b/src/glsl/builtin_functions.cpp
index 96358a7..72054e0 100644
--- a/src/glsl/builtin_functions.cpp
+++ b/src/glsl/builtin_functions.cpp
@@ -304,6 +304,8 @@ tex3d_lod(const _mesa_glsl_parse_state *state)
/******************************************************************************/
+namespace {
+
/**
* builtin_builder: A singleton object representing the core of the built-in
* function module.
@@ -521,6 +523,8 @@ private:
/** @} */
};
+} /* anonymous namespace */
+
/**
* Core builtin_builder functionality:
* @{
diff --git a/src/glsl/ir_function_detect_recursion.cpp b/src/glsl/ir_function_detect_recursion.cpp
index 280c473..9d8fbc1 100644
--- a/src/glsl/ir_function_detect_recursion.cpp
+++ b/src/glsl/ir_function_detect_recursion.cpp
@@ -127,6 +127,8 @@
#include "program/hash_table.h"
#include "program.h"
+namespace {
+
struct call_node : public exec_node {
class function *func;
};
@@ -240,6 +242,8 @@ public:
bool progress;
};
+} /* anonymous namespace */
+
static void
destroy_links(exec_list *list, function *f)
{
diff --git a/src/glsl/ir_import_prototypes.cpp b/src/glsl/ir_import_prototypes.cpp
index 3585bf6..b0429fb 100644
--- a/src/glsl/ir_import_prototypes.cpp
+++ b/src/glsl/ir_import_prototypes.cpp
@@ -30,6 +30,8 @@
#include "ir.h"
#include "glsl_symbol_table.h"
+namespace {
+
/**
* Visitor used to import function prototypes
*
@@ -99,6 +101,7 @@ private:
void *mem_ctx;
};
+} /* anonymous namespace */
/**
* Import function prototypes from one IR tree into another
diff --git a/src/glsl/ir_reader.cpp b/src/glsl/ir_reader.cpp
index ec35b68..f0318ea 100644
--- a/src/glsl/ir_reader.cpp
+++ b/src/glsl/ir_reader.cpp
@@ -28,6 +28,8 @@
const static bool debug = false;
+namespace {
+
class ir_reader {
public:
ir_reader(_mesa_glsl_parse_state *);
@@ -66,6 +68,8 @@ private:
ir_dereference_variable *read_var_ref(s_expression *);
};
+} /* anonymous namespace */
+
ir_reader::ir_reader(_mesa_glsl_parse_state *state) : state(state)
{
this->mem_ctx = state;
diff --git a/src/glsl/ir_set_program_inouts.cpp b/src/glsl/ir_set_program_inouts.cpp
index 6196d6a..1267d6d 100644
--- a/src/glsl/ir_set_program_inouts.cpp
+++ b/src/glsl/ir_set_program_inouts.cpp
@@ -42,6 +42,8 @@
#include "ir_visitor.h"
#include "glsl_types.h"
+namespace {
+
class ir_set_program_inouts_visitor : public ir_hierarchical_visitor {
public:
ir_set_program_inouts_visitor(struct gl_program *prog, GLenum shader_type)
@@ -67,6 +69,8 @@ private:
GLenum shader_type;
};
+} /* anonymous namespace */
+
static inline bool
is_shader_inout(ir_variable *var)
{
diff --git a/src/glsl/ir_validate.cpp b/src/glsl/ir_validate.cpp
index 2068de0..2c64f4e 100644
--- a/src/glsl/ir_validate.cpp
+++ b/src/glsl/ir_validate.cpp
@@ -38,6 +38,8 @@
#include "program/hash_table.h"
#include "glsl_types.h"
+namespace {
+
class ir_validate : public ir_hierarchical_visitor {
public:
ir_validate()
@@ -81,6 +83,7 @@ public:
struct hash_table *ht;
};
+} /* anonymous namespace */
ir_visitor_status
ir_validate::visit(ir_dereference_variable *ir)
diff --git a/src/glsl/link_functions.cpp b/src/glsl/link_functions.cpp
index 9e96365..b1a68fd 100644
--- a/src/glsl/link_functions.cpp
+++ b/src/glsl/link_functions.cpp
@@ -34,6 +34,8 @@ find_matching_signature(const char *name, const exec_list *actual_parameters,
gl_shader **shader_list, unsigned num_shaders,
bool use_builtin);
+namespace {
+
class call_link_visitor : public ir_hierarchical_visitor {
public:
call_link_visitor(gl_shader_program *prog, gl_shader *linked,
@@ -273,6 +275,7 @@ private:
hash_table *locals;
};
+} /* anonymous namespace */
/**
* Searches a list of shaders for a particular function definition
diff --git a/src/glsl/link_uniform_blocks.cpp b/src/glsl/link_uniform_blocks.cpp
index d960758..72d6c53 100644
--- a/src/glsl/link_uniform_blocks.cpp
+++ b/src/glsl/link_uniform_blocks.cpp
@@ -29,6 +29,8 @@
#include "main/hash_table.h"
#include "program.h"
+namespace {
+
class ubo_visitor : public program_resource_visitor {
public:
ubo_visitor(void *mem_ctx, gl_uniform_buffer_variable *variables,
@@ -147,6 +149,8 @@ private:
}
};
+} /* anonymous namespace */
+
struct block {
const glsl_type *type;
bool has_instance_name;
diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/link_uniforms.cpp
index fa77157..03cbcd1 100644
--- a/src/glsl/link_uniforms.cpp
+++ b/src/glsl/link_uniforms.cpp
@@ -168,6 +168,8 @@ program_resource_visitor::visit_field(const glsl_struct_field *field)
/* empty */
}
+namespace {
+
/**
* Class to help calculate the storage requirements for a set of uniforms
*
@@ -272,6 +274,8 @@ private:
struct string_to_uint_map *map;
};
+} /* anonymous namespace */
+
/**
* Class to help parcel out pieces of backing storage to uniforms
*
diff --git a/src/glsl/link_varyings.cpp b/src/glsl/link_varyings.cpp
index 081a51d..905621d 100644
--- a/src/glsl/link_varyings.cpp
+++ b/src/glsl/link_varyings.cpp
@@ -597,6 +597,7 @@ store_tfeedback_info(struct gl_context *ctx, struct gl_shader_program *prog,
return true;
}
+namespace {
/**
* Data structure recording the relationship between outputs of one shader
@@ -689,6 +690,7 @@ private:
const bool consumer_is_fs;
};
+} /* anonymous namespace */
varying_matches::varying_matches(bool disable_varying_packing,
bool consumer_is_fs)
diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp
index 8a143fd..c54b704 100644
--- a/src/glsl/linker.cpp
+++ b/src/glsl/linker.cpp
@@ -82,6 +82,8 @@ extern "C" {
void linker_error(gl_shader_program *, const char *, ...);
+namespace {
+
/**
* Visitor that determines whether or not a variable is ever written.
*/
@@ -275,6 +277,7 @@ private:
bool found;
};
+} /* anonymous namespace */
void
linker_error(gl_shader_program *prog, const char *fmt, ...)
diff --git a/src/glsl/loop_analysis.cpp b/src/glsl/loop_analysis.cpp
index 40897bb..b08241a 100644
--- a/src/glsl/loop_analysis.cpp
+++ b/src/glsl/loop_analysis.cpp
@@ -102,6 +102,7 @@ loop_variable_state::insert(ir_if *if_stmt)
return t;
}
+namespace {
class loop_analysis : public ir_hierarchical_visitor {
public:
@@ -128,6 +129,7 @@ public:
exec_list state;
};
+} /* anonymous namespace */
loop_analysis::loop_analysis(loop_state *loops)
: loops(loops), if_statement_depth(0), current_assignment(NULL)
diff --git a/src/glsl/loop_controls.cpp b/src/glsl/loop_controls.cpp
index 79c8204..2648193 100644
--- a/src/glsl/loop_controls.cpp
+++ b/src/glsl/loop_controls.cpp
@@ -151,6 +151,7 @@ calculate_iterations(ir_rvalue *from, ir_rvalue *to, ir_rvalue *increment,
return (valid_loop) ? iter_value : -1;
}
+namespace {
class loop_control_visitor : public ir_hierarchical_visitor {
public:
@@ -167,6 +168,7 @@ public:
bool progress;
};
+} /* anonymous namespace */
ir_visitor_status
loop_control_visitor::visit_leave(ir_loop *ir)
diff --git a/src/glsl/loop_unroll.cpp b/src/glsl/loop_unroll.cpp
index 3434fde..ff97766 100644
--- a/src/glsl/loop_unroll.cpp
+++ b/src/glsl/loop_unroll.cpp
@@ -25,6 +25,8 @@
#include "loop_analysis.h"
#include "ir_hierarchical_visitor.h"
+namespace {
+
class loop_unroll_visitor : public ir_hierarchical_visitor {
public:
loop_unroll_visitor(loop_state *state, unsigned max_iterations)
@@ -42,6 +44,7 @@ public:
unsigned max_iterations;
};
+} /* anonymous namespace */
static bool
is_break(ir_instruction *ir)
diff --git a/src/glsl/lower_clip_distance.cpp b/src/glsl/lower_clip_distance.cpp
index d6cf944..9ddd646 100644
--- a/src/glsl/lower_clip_distance.cpp
+++ b/src/glsl/lower_clip_distance.cpp
@@ -50,6 +50,8 @@
#include "ir.h"
#include "program/prog_instruction.h" /* For WRITEMASK_* */
+namespace {
+
class lower_clip_distance_visitor : public ir_rvalue_visitor {
public:
lower_clip_distance_visitor()
@@ -81,6 +83,7 @@ public:
ir_variable *new_clip_distance_var;
};
+} /* anonymous namespace */
/**
* Replace any declaration of gl_ClipDistance as an array of floats with a
diff --git a/src/glsl/lower_discard.cpp b/src/glsl/lower_discard.cpp
index cafd2dd..f2757d1 100644
--- a/src/glsl/lower_discard.cpp
+++ b/src/glsl/lower_discard.cpp
@@ -108,6 +108,8 @@
#include "glsl_types.h"
#include "ir.h"
+namespace {
+
class lower_discard_visitor : public ir_hierarchical_visitor {
public:
lower_discard_visitor()
@@ -120,6 +122,7 @@ public:
bool progress;
};
+} /* anonymous namespace */
bool
lower_discard(exec_list *instructions)
diff --git a/src/glsl/lower_discard_flow.cpp b/src/glsl/lower_discard_flow.cpp
index d385c14..1bc56d7 100644
--- a/src/glsl/lower_discard_flow.cpp
+++ b/src/glsl/lower_discard_flow.cpp
@@ -48,6 +48,8 @@
#include "ir.h"
#include "program/hash_table.h"
+namespace {
+
class lower_discard_flow_visitor : public ir_hierarchical_visitor {
public:
lower_discard_flow_visitor(ir_variable *discarded)
@@ -71,6 +73,8 @@ public:
void *mem_ctx;
};
+} /* anonymous namespace */
+
ir_visitor_status
lower_discard_flow_visitor::visit_enter(ir_loop_jump *ir)
{
diff --git a/src/glsl/lower_if_to_cond_assign.cpp b/src/glsl/lower_if_to_cond_assign.cpp
index 2c5d561..1e7ce51 100644
--- a/src/glsl/lower_if_to_cond_assign.cpp
+++ b/src/glsl/lower_if_to_cond_assign.cpp
@@ -49,6 +49,8 @@
#include "ir.h"
#include "program/hash_table.h"
+namespace {
+
class ir_if_to_cond_assign_visitor : public ir_hierarchical_visitor {
public:
ir_if_to_cond_assign_visitor(unsigned max_depth)
@@ -76,6 +78,8 @@ public:
struct hash_table *condition_variables;
};
+} /* anonymous namespace */
+
bool
lower_if_to_cond_assign(exec_list *instructions, unsigned max_depth)
{
diff --git a/src/glsl/lower_instructions.cpp b/src/glsl/lower_instructions.cpp
index cb53048..d01879c 100644
--- a/src/glsl/lower_instructions.cpp
+++ b/src/glsl/lower_instructions.cpp
@@ -109,6 +109,8 @@
using namespace ir_builder;
+namespace {
+
class lower_instructions_visitor : public ir_hierarchical_visitor {
public:
lower_instructions_visitor(unsigned lower)
@@ -133,6 +135,8 @@ private:
void ldexp_to_arith(ir_expression *);
};
+} /* anonymous namespace */
+
/**
* Determine if a particular type of lowering should occur
*/
diff --git a/src/glsl/lower_jumps.cpp b/src/glsl/lower_jumps.cpp
index bfc8c01..97b1abb 100644
--- a/src/glsl/lower_jumps.cpp
+++ b/src/glsl/lower_jumps.cpp
@@ -133,6 +133,8 @@ enum jump_strength
strength_return
};
+namespace {
+
struct block_record
{
/* minimum jump strength (of lowered IR, not pre-lowering IR)
@@ -992,6 +994,8 @@ lower_continue:
}
};
+} /* anonymous namespace */
+
bool
do_lower_jumps(exec_list *instructions, bool pull_out_jumps, bool lower_sub_return, bool lower_main_return, bool lower_continue, bool lower_break)
{
diff --git a/src/glsl/lower_mat_op_to_vec.cpp b/src/glsl/lower_mat_op_to_vec.cpp
index 08cae29..105ee0d 100644
--- a/src/glsl/lower_mat_op_to_vec.cpp
+++ b/src/glsl/lower_mat_op_to_vec.cpp
@@ -35,6 +35,8 @@
#include "ir_expression_flattening.h"
#include "glsl_types.h"
+namespace {
+
class ir_mat_op_to_vec_visitor : public ir_hierarchical_visitor {
public:
ir_mat_op_to_vec_visitor()
@@ -63,6 +65,8 @@ public:
bool made_progress;
};
+} /* anonymous namespace */
+
static bool
mat_op_to_vec_predicate(ir_instruction *ir)
{
diff --git a/src/glsl/lower_named_interface_blocks.cpp b/src/glsl/lower_named_interface_blocks.cpp
index 20196a3..7019185 100644
--- a/src/glsl/lower_named_interface_blocks.cpp
+++ b/src/glsl/lower_named_interface_blocks.cpp
@@ -65,6 +65,8 @@
#include "ir_rvalue_visitor.h"
#include "program/hash_table.h"
+namespace {
+
class flatten_named_interface_blocks_declarations : public ir_rvalue_visitor
{
public:
@@ -83,6 +85,8 @@ public:
virtual void handle_rvalue(ir_rvalue **rvalue);
};
+} /* anonymous namespace */
+
void
flatten_named_interface_blocks_declarations::run(exec_list *instructions)
{
diff --git a/src/glsl/lower_output_reads.cpp b/src/glsl/lower_output_reads.cpp
index 5ba9720..128b0b8 100644
--- a/src/glsl/lower_output_reads.cpp
+++ b/src/glsl/lower_output_reads.cpp
@@ -37,6 +37,8 @@
* main() function to copy the final values to the actual shader outputs.
*/
+namespace {
+
class output_read_remover : public ir_hierarchical_visitor {
protected:
/**
@@ -55,6 +57,8 @@ public:
virtual ir_visitor_status visit_leave(class ir_function_signature *);
};
+} /* anonymous namespace */
+
/**
* Hash function for the output variables - computes the hash of the name.
* NOTE: We're using the name string to ensure that the hash doesn't depend
diff --git a/src/glsl/lower_packed_varyings.cpp b/src/glsl/lower_packed_varyings.cpp
index 4f61722..2bcadfd 100644
--- a/src/glsl/lower_packed_varyings.cpp
+++ b/src/glsl/lower_packed_varyings.cpp
@@ -148,6 +148,8 @@
#include "ir.h"
#include "ir_optimization.h"
+namespace {
+
/**
* Visitor that performs varying packing. For each varying declared in the
* shader, this visitor determines whether it needs to be packed. If so, it
@@ -230,6 +232,8 @@ private:
exec_list *out_instructions;
};
+} /* anonymous namespace */
+
lower_packed_varyings_visitor::lower_packed_varyings_visitor(
void *mem_ctx, unsigned location_base, unsigned locations_used,
ir_variable_mode mode, unsigned gs_input_vertices,
diff --git a/src/glsl/lower_texture_projection.cpp b/src/glsl/lower_texture_projection.cpp
index 6e3aaec..16d6376 100644
--- a/src/glsl/lower_texture_projection.cpp
+++ b/src/glsl/lower_texture_projection.cpp
@@ -37,6 +37,8 @@
#include "ir.h"
+namespace {
+
class lower_texture_projection_visitor : public ir_hierarchical_visitor {
public:
lower_texture_projection_visitor()
@@ -49,6 +51,8 @@ public:
bool progress;
};
+} /* anonymous namespace */
+
ir_visitor_status
lower_texture_projection_visitor::visit_leave(ir_texture *ir)
{
diff --git a/src/glsl/lower_variable_index_to_cond_assign.cpp b/src/glsl/lower_variable_index_to_cond_assign.cpp
index 0f50727..21674b5 100644
--- a/src/glsl/lower_variable_index_to_cond_assign.cpp
+++ b/src/glsl/lower_variable_index_to_cond_assign.cpp
@@ -122,6 +122,7 @@ is_array_or_matrix(const ir_rvalue *ir)
return (ir->type->is_array() || ir->type->is_matrix());
}
+namespace {
/**
* Replace a dereference of a variable with a specified r-value
*
@@ -512,6 +513,8 @@ public:
}
};
+} /* anonymous namespace */
+
bool
lower_variable_index_to_cond_assign(exec_list *instructions,
bool lower_input,
diff --git a/src/glsl/lower_vec_index_to_cond_assign.cpp b/src/glsl/lower_vec_index_to_cond_assign.cpp
index 8808596..8080006 100644
--- a/src/glsl/lower_vec_index_to_cond_assign.cpp
+++ b/src/glsl/lower_vec_index_to_cond_assign.cpp
@@ -41,6 +41,8 @@
#include "ir_optimization.h"
#include "glsl_types.h"
+namespace {
+
/**
* Visitor class for replacing expressions with ir_constant values.
*/
@@ -69,6 +71,8 @@ public:
bool progress;
};
+} /* anonymous namespace */
+
ir_rvalue *
ir_vec_index_to_cond_assign_visitor::convert_vec_index_to_cond_assign(void *mem_ctx,
ir_rvalue *orig_vector,
diff --git a/src/glsl/lower_vec_index_to_swizzle.cpp b/src/glsl/lower_vec_index_to_swizzle.cpp
index d5ad692..4698579 100644
--- a/src/glsl/lower_vec_index_to_swizzle.cpp
+++ b/src/glsl/lower_vec_index_to_swizzle.cpp
@@ -39,6 +39,8 @@
* Visitor class for replacing expressions with ir_constant values.
*/
+namespace {
+
class ir_vec_index_to_swizzle_visitor : public ir_hierarchical_visitor {
public:
ir_vec_index_to_swizzle_visitor()
@@ -58,6 +60,8 @@ public:
bool progress;
};
+} /* anonymous namespace */
+
ir_rvalue *
ir_vec_index_to_swizzle_visitor::convert_vector_extract_to_swizzle(ir_rvalue *ir)
{
diff --git a/src/glsl/lower_vector.cpp b/src/glsl/lower_vector.cpp
index 0cd6909..9172b6a 100644
--- a/src/glsl/lower_vector.cpp
+++ b/src/glsl/lower_vector.cpp
@@ -31,6 +31,8 @@
#include "ir.h"
#include "ir_rvalue_visitor.h"
+namespace {
+
class lower_vector_visitor : public ir_rvalue_visitor {
public:
lower_vector_visitor() : progress(false)
@@ -48,6 +50,8 @@ public:
bool progress;
};
+} /* anonymous namespace */
+
/**
* Determine if an IR expression tree looks like an extended swizzle
*
diff --git a/src/glsl/lower_vector_insert.cpp b/src/glsl/lower_vector_insert.cpp
index 0e640cc..6d7cfa9 100644
--- a/src/glsl/lower_vector_insert.cpp
+++ b/src/glsl/lower_vector_insert.cpp
@@ -27,6 +27,8 @@
using namespace ir_builder;
+namespace {
+
class vector_insert_visitor : public ir_rvalue_visitor {
public:
vector_insert_visitor(bool lower_nonconstant_index)
@@ -48,6 +50,7 @@ public:
bool lower_nonconstant_index;
};
+} /* anonymous namespace */
void
vector_insert_visitor::handle_rvalue(ir_rvalue **rv)
diff --git a/src/glsl/opt_array_splitting.cpp b/src/glsl/opt_array_splitting.cpp
index f4a7ef9..34ac836 100644
--- a/src/glsl/opt_array_splitting.cpp
+++ b/src/glsl/opt_array_splitting.cpp
@@ -40,6 +40,8 @@
static bool debug = false;
+namespace {
+
namespace opt_array_splitting {
class variable_entry : public exec_node
@@ -77,6 +79,7 @@ public:
};
} /* namespace */
+
using namespace opt_array_splitting;
/**
@@ -112,6 +115,8 @@ public:
void *mem_ctx;
};
+} /* namespace */
+
variable_entry *
ir_array_reference_visitor::get_variable_entry(ir_variable *var)
{
diff --git a/src/glsl/opt_dead_builtin_varyings.cpp b/src/glsl/opt_dead_builtin_varyings.cpp
index 3cdd130..7e8cd43 100644
--- a/src/glsl/opt_dead_builtin_varyings.cpp
+++ b/src/glsl/opt_dead_builtin_varyings.cpp
@@ -52,6 +52,7 @@
#include "glsl_types.h"
#include "link_varyings.h"
+namespace {
/**
* This obtains detailed information about built-in varyings from shader code.
@@ -397,6 +398,7 @@ private:
ir_variable *new_fog;
};
+} /* anonymous namespace */
static void
lower_texcoord_array(exec_list *ir, const varying_info_visitor *info)
diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp
index cef32dc..c336e44 100644
--- a/src/mesa/program/ir_to_mesa.cpp
+++ b/src/mesa/program/ir_to_mesa.cpp
@@ -57,11 +57,13 @@ extern "C" {
#include "program/sampler.h"
}
+static int swizzle_for_size(int size);
+
+namespace {
+
class src_reg;
class dst_reg;
-static int swizzle_for_size(int size);
-
/**
* This struct is a corresponding struct to Mesa prog_src_register, with
* wider fields.
@@ -129,6 +131,8 @@ public:
src_reg *reladdr;
};
+} /* anonymous namespace */
+
src_reg::src_reg(dst_reg reg)
{
this->file = reg.file;
@@ -147,6 +151,8 @@ dst_reg::dst_reg(src_reg reg)
this->reladdr = reg.reladdr;
}
+namespace {
+
class ir_to_mesa_instruction : public exec_node {
public:
/* Callers of this ralloc-based new need not call delete. It's
@@ -326,6 +332,8 @@ public:
void *mem_ctx;
};
+} /* anonymous namespace */
+
static src_reg undef_src = src_reg(PROGRAM_UNDEFINED, 0, NULL);
static dst_reg undef_dst = dst_reg(PROGRAM_UNDEFINED, SWIZZLE_NOOP);
@@ -2417,6 +2425,8 @@ print_program(struct prog_instruction *mesa_instructions,
}
}
+namespace {
+
class add_uniform_to_shader : public program_resource_visitor {
public:
add_uniform_to_shader(struct gl_shader_program *shader_program,
@@ -2446,6 +2456,8 @@ private:
gl_shader_type shader_type;
};
+} /* anonymous namespace */
+
void
add_uniform_to_shader::visit_field(const glsl_type *type, const char *name,
bool row_major)
--
1.8.4.rc3
More information about the mesa-dev
mailing list