Am Montag, den 29.10.2018, 17:13 +0000 schrieb Eric Engestrom:
> Signed-off-by: Eric Engestrom <eric.engest...@intel.com>
> ---
>  src/gallium/drivers/r600/sb/sb_expr.cpp          | 10 +++++-----
>  src/gallium/drivers/r600/sb/sb_if_conversion.cpp |  4 ++--
>  src/gallium/drivers/r600/sb/sb_ir.h              |  2 +-
>  src/gallium/drivers/r600/sb/sb_peephole.cpp      |  4 ++--
>  4 files changed, 10 insertions(+), 10 deletions(-)
> 
> diff --git a/src/gallium/drivers/r600/sb/sb_expr.cpp
> b/src/gallium/drivers/r600/sb/sb_expr.cpp
> index 05674ff24b88eaaae523..ee54f49531541d7860e9 100644
> --- a/src/gallium/drivers/r600/sb/sb_expr.cpp
> +++ b/src/gallium/drivers/r600/sb/sb_expr.cpp
> @@ -719,7 +719,7 @@ bool expr_handler::fold_assoc(alu_node *n) {
>                       n->src[0] = n->src[2];
>                       n->bc.src[0] = n->bc.src[2];
>                       n->src[1] = sh.get_const_value(cr);
> -                     memset(&n->bc.src[1], 0,
> sizeof(bc_alu_src));
> +                     n->bc.src[1] = {};

CMIIW, but this requires C++11, no? Is this already enabled for
compiling this part of mesa with the autotools? in .tavis-ci.yml I see
g++ 4.7 and 4.8 used, and these don't enable it by default. 

With this clarified this patch is 
Reviewed-By: Gert Wollny <gert.wol...@collabora.com> 

Best, 
Gert 

>  
>                       n->src.resize(2);
>                       n->bc.set_op(ALU_OP2_ADD);
> @@ -729,7 +729,7 @@ bool expr_handler::fold_assoc(alu_node *n) {
>               n->bc.src[0] = a->bc.src[last_arg];
>               n->bc.src[0].neg ^= cur_neg;
>               n->src[1] = sh.get_const_value(cr);
> -             memset(&n->bc.src[1], 0, sizeof(bc_alu_src));
> +             n->bc.src[1] = {};
>       }
>  
>       return false;
> @@ -770,7 +770,7 @@ bool expr_handler::fold_alu_op2(alu_node& n) {
>                       case ALU_OP2_ADD:  // (ADD x, x) => (MUL x,
> 2)
>                               if (!sh.safe_math) {
>                                       n.src[1] =
> sh.get_const_value(2.0f);
> -                                     memset(&n.bc.src[1], 0,
> sizeof(bc_alu_src));
> +                                     n.bc.src[1] = {};
>                                       n.bc.set_op(ALU_OP2_MUL);
>                                       return fold_alu_op2(n);
>                               }
> @@ -1070,7 +1070,7 @@ bool expr_handler::fold_alu_op3(alu_node& n) {
>                               }
>  
>                               n.src[1] = t;
> -                             memset(&n.bc.src[1], 0,
> sizeof(bc_alu_src));
> +                             n.bc.src[1] = {};
>  
>                               n.src.resize(2);
>  
> @@ -1101,7 +1101,7 @@ bool expr_handler::fold_alu_op3(alu_node& n) {
>                               dv = cv0.f * cv1.f;
>                               n.bc.set_op(ALU_OP2_ADD);
>                               n.src[0] = sh.get_const_value(dv);
> -                             memset(&n.bc.src[0], 0,
> sizeof(bc_alu_src));
> +                             n.bc.src[0] = {};
>                               n.src[1] = n.src[2];
>                               n.bc.src[1] = n.bc.src[2];
>                               n.src.resize(2);
> diff --git a/src/gallium/drivers/r600/sb/sb_if_conversion.cpp
> b/src/gallium/drivers/r600/sb/sb_if_conversion.cpp
> index 017153434fcaaf6e500f..42f934a1afa21638df60 100644
> --- a/src/gallium/drivers/r600/sb/sb_if_conversion.cpp
> +++ b/src/gallium/drivers/r600/sb/sb_if_conversion.cpp
> @@ -99,8 +99,8 @@ void
> if_conversion::convert_kill_instructions(region_node *r,
>                       a->src[0] = cnd;
>                       a->src[1] = sh.get_const_value(0);
>                       // clear modifiers
> -                     memset(&a->bc.src[0], 0,
> sizeof(bc_alu_src));
> -                     memset(&a->bc.src[1], 0,
> sizeof(bc_alu_src));
> +                     a->bc.src[0] = {};
> +                     a->bc.src[1] = {};
>               } else {
>                       // kill with constant 'false' condition,
> this shouldn't happen
>                       // but remove it anyway
> diff --git a/src/gallium/drivers/r600/sb/sb_ir.h
> b/src/gallium/drivers/r600/sb/sb_ir.h
> index c7a94fcb930ecd9d9570..6410d7147d7e986ebcf0 100644
> --- a/src/gallium/drivers/r600/sb/sb_ir.h
> +++ b/src/gallium/drivers/r600/sb/sb_ir.h
> @@ -1012,7 +1012,7 @@ class cf_node : public container_node {
>  
>  class alu_node : public node {
>  protected:
> -     alu_node() : node(NT_OP, NST_ALU_INST) { memset(&bc, 0,
> sizeof(bc_alu)); };
> +     alu_node() : node(NT_OP, NST_ALU_INST) { bc = {}; };
>  public:
>       bc_alu bc;
>  
> diff --git a/src/gallium/drivers/r600/sb/sb_peephole.cpp
> b/src/gallium/drivers/r600/sb/sb_peephole.cpp
> index 4390a8f525c87749e2d4..b0b751d382c16193934f 100644
> --- a/src/gallium/drivers/r600/sb/sb_peephole.cpp
> +++ b/src/gallium/drivers/r600/sb/sb_peephole.cpp
> @@ -131,8 +131,8 @@ void peephole::optimize_cc_op2(alu_node* a) {
>               std::swap(a->src[0],a->src[1]);
>               swapped = true;
>               // clear modifiers
> -             memset(&a->bc.src[0], 0, sizeof(bc_alu_src));
> -             memset(&a->bc.src[1], 0, sizeof(bc_alu_src));
> +             a->bc.src[0] = {};
> +             a->bc.src[1] = {};
>       }
>  
>       if (swapped || (a->src[1]->is_const() &&
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to