Re: [Mesa-dev] [PATCH] glsl: set mask via initialization list rather than in constructor body

2017-05-20 Thread Samuel Pitoiset



On 05/20/2017 07:05 AM, Timothy Arceri wrote:

Potentially more efficient as is may avoid the struct being initialised
twice.
---
  src/compiler/glsl/ir.cpp | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/compiler/glsl/ir.cpp b/src/compiler/glsl/ir.cpp
index 123de99..e55635b 100644
--- a/src/compiler/glsl/ir.cpp
+++ b/src/compiler/glsl/ir.cpp
@@ -1583,24 +1583,23 @@ ir_swizzle::ir_swizzle(ir_rvalue *val, unsigned x, 
unsigned y, unsigned z,
  }
  
  ir_swizzle::ir_swizzle(ir_rvalue *val, const unsigned *comp,

   unsigned count)
 : ir_rvalue(ir_type_swizzle), val(val)
  {
 this->init_mask(comp, count);
  }
  
  ir_swizzle::ir_swizzle(ir_rvalue *val, ir_swizzle_mask mask)

-   : ir_rvalue(ir_type_swizzle)
+   : ir_rvalue(ir_type_swizzle), mask(mask)
  {
 this->val = val;
-   this->mask = mask;


'val' could also be initialized through the list.

With that fixed, patch is:

Reviewed-by: Samuel Pitoiset 


 this->type = glsl_type::get_instance(val->type->base_type,
mask.num_components, 1);
  }
  
  #define X 1

  #define R 5
  #define S 9
  #define I 13
  
  ir_swizzle *



___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


[Mesa-dev] [PATCH] glsl: set mask via initialization list rather than in constructor body

2017-05-19 Thread Timothy Arceri
Potentially more efficient as is may avoid the struct being initialised
twice.
---
 src/compiler/glsl/ir.cpp | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/compiler/glsl/ir.cpp b/src/compiler/glsl/ir.cpp
index 123de99..e55635b 100644
--- a/src/compiler/glsl/ir.cpp
+++ b/src/compiler/glsl/ir.cpp
@@ -1583,24 +1583,23 @@ ir_swizzle::ir_swizzle(ir_rvalue *val, unsigned x, 
unsigned y, unsigned z,
 }
 
 ir_swizzle::ir_swizzle(ir_rvalue *val, const unsigned *comp,
   unsigned count)
: ir_rvalue(ir_type_swizzle), val(val)
 {
this->init_mask(comp, count);
 }
 
 ir_swizzle::ir_swizzle(ir_rvalue *val, ir_swizzle_mask mask)
-   : ir_rvalue(ir_type_swizzle)
+   : ir_rvalue(ir_type_swizzle), mask(mask)
 {
this->val = val;
-   this->mask = mask;
this->type = glsl_type::get_instance(val->type->base_type,
mask.num_components, 1);
 }
 
 #define X 1
 #define R 5
 #define S 9
 #define I 13
 
 ir_swizzle *
-- 
2.9.4

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev