Re: [Mesa-dev] [PATCH 02/13] nir/builder: Add bit_size info to nir_build_imm()
On 28/04/16 19:40, Mark Janes wrote: > Hi Samuel, > > When this patch was pushed, it broke the vulkan build. Can you please > add "--with-vulkan-drivers=intel" to the build-test that you run before > pushing? > I'm sorry for the inconveniences caused. I didn't notice this change would break vulkan build. I have just added that argument to my build. Thanks, Sam > thanks, > > Mark > > Samuel Iglesias Gonsálvezwrites: > >> Signed-off-by: Samuel Iglesias Gonsálvez >> --- >> src/compiler/nir/nir_builder.h | 15 --- >> src/compiler/nir/nir_lower_system_values.c | 2 +- >> src/compiler/nir/nir_lower_tex.c | 2 +- >> 3 files changed, 10 insertions(+), 9 deletions(-) >> >> diff --git a/src/compiler/nir/nir_builder.h b/src/compiler/nir/nir_builder.h >> index 38a1cf7..84fc9bf 100644 >> --- a/src/compiler/nir/nir_builder.h >> +++ b/src/compiler/nir/nir_builder.h >> @@ -89,10 +89,11 @@ nir_ssa_undef(nir_builder *build, unsigned >> num_components, unsigned bit_size) >> } >> >> static inline nir_ssa_def * >> -nir_build_imm(nir_builder *build, unsigned num_components, nir_const_value >> value) >> +nir_build_imm(nir_builder *build, unsigned num_components, >> + nir_const_value value, unsigned bit_size) >> { >> nir_load_const_instr *load_const = >> - nir_load_const_instr_create(build->shader, num_components, 32); >> + nir_load_const_instr_create(build->shader, num_components, bit_size); >> if (!load_const) >>return NULL; >> >> @@ -111,7 +112,7 @@ nir_imm_float(nir_builder *build, float x) >> memset(, 0, sizeof(v)); >> v.f32[0] = x; >> >> - return nir_build_imm(build, 1, v); >> + return nir_build_imm(build, 1, v, 32); >> } >> >> static inline nir_ssa_def * >> @@ -125,7 +126,7 @@ nir_imm_vec4(nir_builder *build, float x, float y, float >> z, float w) >> v.f32[2] = z; >> v.f32[3] = w; >> >> - return nir_build_imm(build, 4, v); >> + return nir_build_imm(build, 4, v, 32); >> } >> >> static inline nir_ssa_def * >> @@ -136,7 +137,7 @@ nir_imm_int(nir_builder *build, int x) >> memset(, 0, sizeof(v)); >> v.i32[0] = x; >> >> - return nir_build_imm(build, 1, v); >> + return nir_build_imm(build, 1, v, 32); >> } >> >> static inline nir_ssa_def * >> @@ -150,14 +151,14 @@ nir_imm_ivec4(nir_builder *build, int x, int y, int z, >> int w) >> v.i32[2] = z; >> v.i32[3] = w; >> >> - return nir_build_imm(build, 4, v); >> + return nir_build_imm(build, 4, v, 32); >> } >> >> static inline nir_ssa_def * >> nir_imm_uint(nir_builder *build, unsigned x) >> { >> nir_const_value v = { { .u32 = {x, 0, 0, 0} } }; >> - return nir_build_imm(build, 1, v); >> + return nir_build_imm(build, 1, v, 32); >> } >> >> static inline nir_ssa_def * >> diff --git a/src/compiler/nir/nir_lower_system_values.c >> b/src/compiler/nir/nir_lower_system_values.c >> index 2d3ccd7..8362619 100644 >> --- a/src/compiler/nir/nir_lower_system_values.c >> +++ b/src/compiler/nir/nir_lower_system_values.c >> @@ -75,7 +75,7 @@ convert_block(nir_block *block, void *void_state) >> nir_load_system_value(b, >> nir_intrinsic_load_local_invocation_id, 0); >> >> sysval = nir_iadd(b, nir_imul(b, group_id, >> - nir_build_imm(b, 3, local_size)), >> + nir_build_imm(b, 3, local_size, >> 32)), >>local_id); >> break; >>} >> diff --git a/src/compiler/nir/nir_lower_tex.c >> b/src/compiler/nir/nir_lower_tex.c >> index 4999603..47a3786 100644 >> --- a/src/compiler/nir/nir_lower_tex.c >> +++ b/src/compiler/nir/nir_lower_tex.c >> @@ -232,7 +232,7 @@ get_zero_or_one(nir_builder *b, nir_alu_type type, >> uint8_t swizzle_val) >> v.u32[0] = v.u32[1] = v.u32[2] = v.u32[3] = 1; >> } >> >> - return nir_build_imm(b, 4, v); >> + return nir_build_imm(b, 4, v, 32); >> } >> >> static void >> -- >> 2.5.0 >> >> ___ >> mesa-dev mailing list >> mesa-dev@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev > ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 02/13] nir/builder: Add bit_size info to nir_build_imm()
Hi Samuel, When this patch was pushed, it broke the vulkan build. Can you please add "--with-vulkan-drivers=intel" to the build-test that you run before pushing? thanks, Mark Samuel Iglesias Gonsálvezwrites: > Signed-off-by: Samuel Iglesias Gonsálvez > --- > src/compiler/nir/nir_builder.h | 15 --- > src/compiler/nir/nir_lower_system_values.c | 2 +- > src/compiler/nir/nir_lower_tex.c | 2 +- > 3 files changed, 10 insertions(+), 9 deletions(-) > > diff --git a/src/compiler/nir/nir_builder.h b/src/compiler/nir/nir_builder.h > index 38a1cf7..84fc9bf 100644 > --- a/src/compiler/nir/nir_builder.h > +++ b/src/compiler/nir/nir_builder.h > @@ -89,10 +89,11 @@ nir_ssa_undef(nir_builder *build, unsigned > num_components, unsigned bit_size) > } > > static inline nir_ssa_def * > -nir_build_imm(nir_builder *build, unsigned num_components, nir_const_value > value) > +nir_build_imm(nir_builder *build, unsigned num_components, > + nir_const_value value, unsigned bit_size) > { > nir_load_const_instr *load_const = > - nir_load_const_instr_create(build->shader, num_components, 32); > + nir_load_const_instr_create(build->shader, num_components, bit_size); > if (!load_const) >return NULL; > > @@ -111,7 +112,7 @@ nir_imm_float(nir_builder *build, float x) > memset(, 0, sizeof(v)); > v.f32[0] = x; > > - return nir_build_imm(build, 1, v); > + return nir_build_imm(build, 1, v, 32); > } > > static inline nir_ssa_def * > @@ -125,7 +126,7 @@ nir_imm_vec4(nir_builder *build, float x, float y, float > z, float w) > v.f32[2] = z; > v.f32[3] = w; > > - return nir_build_imm(build, 4, v); > + return nir_build_imm(build, 4, v, 32); > } > > static inline nir_ssa_def * > @@ -136,7 +137,7 @@ nir_imm_int(nir_builder *build, int x) > memset(, 0, sizeof(v)); > v.i32[0] = x; > > - return nir_build_imm(build, 1, v); > + return nir_build_imm(build, 1, v, 32); > } > > static inline nir_ssa_def * > @@ -150,14 +151,14 @@ nir_imm_ivec4(nir_builder *build, int x, int y, int z, > int w) > v.i32[2] = z; > v.i32[3] = w; > > - return nir_build_imm(build, 4, v); > + return nir_build_imm(build, 4, v, 32); > } > > static inline nir_ssa_def * > nir_imm_uint(nir_builder *build, unsigned x) > { > nir_const_value v = { { .u32 = {x, 0, 0, 0} } }; > - return nir_build_imm(build, 1, v); > + return nir_build_imm(build, 1, v, 32); > } > > static inline nir_ssa_def * > diff --git a/src/compiler/nir/nir_lower_system_values.c > b/src/compiler/nir/nir_lower_system_values.c > index 2d3ccd7..8362619 100644 > --- a/src/compiler/nir/nir_lower_system_values.c > +++ b/src/compiler/nir/nir_lower_system_values.c > @@ -75,7 +75,7 @@ convert_block(nir_block *block, void *void_state) > nir_load_system_value(b, nir_intrinsic_load_local_invocation_id, > 0); > > sysval = nir_iadd(b, nir_imul(b, group_id, > - nir_build_imm(b, 3, local_size)), > + nir_build_imm(b, 3, local_size, > 32)), >local_id); > break; >} > diff --git a/src/compiler/nir/nir_lower_tex.c > b/src/compiler/nir/nir_lower_tex.c > index 4999603..47a3786 100644 > --- a/src/compiler/nir/nir_lower_tex.c > +++ b/src/compiler/nir/nir_lower_tex.c > @@ -232,7 +232,7 @@ get_zero_or_one(nir_builder *b, nir_alu_type type, > uint8_t swizzle_val) > v.u32[0] = v.u32[1] = v.u32[2] = v.u32[3] = 1; > } > > - return nir_build_imm(b, 4, v); > + return nir_build_imm(b, 4, v, 32); > } > > static void > -- > 2.5.0 > > ___ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 02/13] nir/builder: Add bit_size info to nir_build_imm()
On Apr 25, 2016 1:36 AM, "Samuel Iglesias Gonsálvez"wrote: > > > > On 13/04/16 07:23, Samuel Iglesias Gonsálvez wrote: > > > > > > On 12/04/16 17:24, Jason Ekstrand wrote: > >> On Apr 12, 2016 1:06 AM, "Samuel Iglesias Gonsálvez" < sigles...@igalia.com> > >> wrote: > >>> > >>> Signed-off-by: Samuel Iglesias Gonsálvez > >>> --- > >>> src/compiler/nir/nir_builder.h | 15 --- > >>> src/compiler/nir/nir_lower_system_values.c | 2 +- > >>> src/compiler/nir/nir_lower_tex.c | 2 +- > >>> 3 files changed, 10 insertions(+), 9 deletions(-) > >>> > >>> diff --git a/src/compiler/nir/nir_builder.h > >> b/src/compiler/nir/nir_builder.h > >>> index 38a1cf7..84fc9bf 100644 > >>> --- a/src/compiler/nir/nir_builder.h > >>> +++ b/src/compiler/nir/nir_builder.h > >>> @@ -89,10 +89,11 @@ nir_ssa_undef(nir_builder *build, unsigned > >> num_components, unsigned bit_size) > >>> } > >>> > >>> static inline nir_ssa_def * > >>> -nir_build_imm(nir_builder *build, unsigned num_components, > >> nir_const_value value) > >>> +nir_build_imm(nir_builder *build, unsigned num_components, > >>> + nir_const_value value, unsigned bit_size) > >> > >> Quick fly-by comment: can we keep num_components and bit_size together and > >> leave value as the last argument. The two sizes are kind of a logical pair > >> and them being separated be the value parameter seems wrong. > >> > > > > Agreed. I will do the change locally. > > > > Thanks! > > > > BTW, Do you give your R-b to the patch with this change? Yup > Sam > > > Sam > > > >>> { > >>> nir_load_const_instr *load_const = > >>> - nir_load_const_instr_create(build->shader, num_components, 32); > >>> + nir_load_const_instr_create(build->shader, num_components, > >> bit_size); > >>> if (!load_const) > >>>return NULL; > >>> > >>> @@ -111,7 +112,7 @@ nir_imm_float(nir_builder *build, float x) > >>> memset(, 0, sizeof(v)); > >>> v.f32[0] = x; > >>> > >>> - return nir_build_imm(build, 1, v); > >>> + return nir_build_imm(build, 1, v, 32); > >>> } > >>> > >>> static inline nir_ssa_def * > >>> @@ -125,7 +126,7 @@ nir_imm_vec4(nir_builder *build, float x, float y, > >> float z, float w) > >>> v.f32[2] = z; > >>> v.f32[3] = w; > >>> > >>> - return nir_build_imm(build, 4, v); > >>> + return nir_build_imm(build, 4, v, 32); > >>> } > >>> > >>> static inline nir_ssa_def * > >>> @@ -136,7 +137,7 @@ nir_imm_int(nir_builder *build, int x) > >>> memset(, 0, sizeof(v)); > >>> v.i32[0] = x; > >>> > >>> - return nir_build_imm(build, 1, v); > >>> + return nir_build_imm(build, 1, v, 32); > >>> } > >>> > >>> static inline nir_ssa_def * > >>> @@ -150,14 +151,14 @@ nir_imm_ivec4(nir_builder *build, int x, int y, int > >> z, int w) > >>> v.i32[2] = z; > >>> v.i32[3] = w; > >>> > >>> - return nir_build_imm(build, 4, v); > >>> + return nir_build_imm(build, 4, v, 32); > >>> } > >>> > >>> static inline nir_ssa_def * > >>> nir_imm_uint(nir_builder *build, unsigned x) > >>> { > >>> nir_const_value v = { { .u32 = {x, 0, 0, 0} } }; > >>> - return nir_build_imm(build, 1, v); > >>> + return nir_build_imm(build, 1, v, 32); > >>> } > >>> > >>> static inline nir_ssa_def * > >>> diff --git a/src/compiler/nir/nir_lower_system_values.c > >> b/src/compiler/nir/nir_lower_system_values.c > >>> index 2d3ccd7..8362619 100644 > >>> --- a/src/compiler/nir/nir_lower_system_values.c > >>> +++ b/src/compiler/nir/nir_lower_system_values.c > >>> @@ -75,7 +75,7 @@ convert_block(nir_block *block, void *void_state) > >>> nir_load_system_value(b, > >> nir_intrinsic_load_local_invocation_id, 0); > >>> > >>> sysval = nir_iadd(b, nir_imul(b, group_id, > >>> - nir_build_imm(b, 3, > >> local_size)), > >>> + nir_build_imm(b, 3, > >> local_size, 32)), > >>>local_id); > >>> break; > >>>} > >>> diff --git a/src/compiler/nir/nir_lower_tex.c > >> b/src/compiler/nir/nir_lower_tex.c > >>> index 4999603..47a3786 100644 > >>> --- a/src/compiler/nir/nir_lower_tex.c > >>> +++ b/src/compiler/nir/nir_lower_tex.c > >>> @@ -232,7 +232,7 @@ get_zero_or_one(nir_builder *b, nir_alu_type type, > >> uint8_t swizzle_val) > >>> v.u32[0] = v.u32[1] = v.u32[2] = v.u32[3] = 1; > >>> } > >>> > >>> - return nir_build_imm(b, 4, v); > >>> + return nir_build_imm(b, 4, v, 32); > >>> } > >>> > >>> static void > >>> -- > >>> 2.5.0 > >>> > >>> ___ > >>> mesa-dev mailing list > >>> mesa-dev@lists.freedesktop.org > >>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev > >> > > ___ > > mesa-dev mailing list > > mesa-dev@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/mesa-dev > >
Re: [Mesa-dev] [PATCH 02/13] nir/builder: Add bit_size info to nir_build_imm()
On 13/04/16 07:23, Samuel Iglesias Gonsálvez wrote: > > > On 12/04/16 17:24, Jason Ekstrand wrote: >> On Apr 12, 2016 1:06 AM, "Samuel Iglesias Gonsálvez">> wrote: >>> >>> Signed-off-by: Samuel Iglesias Gonsálvez >>> --- >>> src/compiler/nir/nir_builder.h | 15 --- >>> src/compiler/nir/nir_lower_system_values.c | 2 +- >>> src/compiler/nir/nir_lower_tex.c | 2 +- >>> 3 files changed, 10 insertions(+), 9 deletions(-) >>> >>> diff --git a/src/compiler/nir/nir_builder.h >> b/src/compiler/nir/nir_builder.h >>> index 38a1cf7..84fc9bf 100644 >>> --- a/src/compiler/nir/nir_builder.h >>> +++ b/src/compiler/nir/nir_builder.h >>> @@ -89,10 +89,11 @@ nir_ssa_undef(nir_builder *build, unsigned >> num_components, unsigned bit_size) >>> } >>> >>> static inline nir_ssa_def * >>> -nir_build_imm(nir_builder *build, unsigned num_components, >> nir_const_value value) >>> +nir_build_imm(nir_builder *build, unsigned num_components, >>> + nir_const_value value, unsigned bit_size) >> >> Quick fly-by comment: can we keep num_components and bit_size together and >> leave value as the last argument. The two sizes are kind of a logical pair >> and them being separated be the value parameter seems wrong. >> > > Agreed. I will do the change locally. > > Thanks! > BTW, Do you give your R-b to the patch with this change? Sam > Sam > >>> { >>> nir_load_const_instr *load_const = >>> - nir_load_const_instr_create(build->shader, num_components, 32); >>> + nir_load_const_instr_create(build->shader, num_components, >> bit_size); >>> if (!load_const) >>>return NULL; >>> >>> @@ -111,7 +112,7 @@ nir_imm_float(nir_builder *build, float x) >>> memset(, 0, sizeof(v)); >>> v.f32[0] = x; >>> >>> - return nir_build_imm(build, 1, v); >>> + return nir_build_imm(build, 1, v, 32); >>> } >>> >>> static inline nir_ssa_def * >>> @@ -125,7 +126,7 @@ nir_imm_vec4(nir_builder *build, float x, float y, >> float z, float w) >>> v.f32[2] = z; >>> v.f32[3] = w; >>> >>> - return nir_build_imm(build, 4, v); >>> + return nir_build_imm(build, 4, v, 32); >>> } >>> >>> static inline nir_ssa_def * >>> @@ -136,7 +137,7 @@ nir_imm_int(nir_builder *build, int x) >>> memset(, 0, sizeof(v)); >>> v.i32[0] = x; >>> >>> - return nir_build_imm(build, 1, v); >>> + return nir_build_imm(build, 1, v, 32); >>> } >>> >>> static inline nir_ssa_def * >>> @@ -150,14 +151,14 @@ nir_imm_ivec4(nir_builder *build, int x, int y, int >> z, int w) >>> v.i32[2] = z; >>> v.i32[3] = w; >>> >>> - return nir_build_imm(build, 4, v); >>> + return nir_build_imm(build, 4, v, 32); >>> } >>> >>> static inline nir_ssa_def * >>> nir_imm_uint(nir_builder *build, unsigned x) >>> { >>> nir_const_value v = { { .u32 = {x, 0, 0, 0} } }; >>> - return nir_build_imm(build, 1, v); >>> + return nir_build_imm(build, 1, v, 32); >>> } >>> >>> static inline nir_ssa_def * >>> diff --git a/src/compiler/nir/nir_lower_system_values.c >> b/src/compiler/nir/nir_lower_system_values.c >>> index 2d3ccd7..8362619 100644 >>> --- a/src/compiler/nir/nir_lower_system_values.c >>> +++ b/src/compiler/nir/nir_lower_system_values.c >>> @@ -75,7 +75,7 @@ convert_block(nir_block *block, void *void_state) >>> nir_load_system_value(b, >> nir_intrinsic_load_local_invocation_id, 0); >>> >>> sysval = nir_iadd(b, nir_imul(b, group_id, >>> - nir_build_imm(b, 3, >> local_size)), >>> + nir_build_imm(b, 3, >> local_size, 32)), >>>local_id); >>> break; >>>} >>> diff --git a/src/compiler/nir/nir_lower_tex.c >> b/src/compiler/nir/nir_lower_tex.c >>> index 4999603..47a3786 100644 >>> --- a/src/compiler/nir/nir_lower_tex.c >>> +++ b/src/compiler/nir/nir_lower_tex.c >>> @@ -232,7 +232,7 @@ get_zero_or_one(nir_builder *b, nir_alu_type type, >> uint8_t swizzle_val) >>> v.u32[0] = v.u32[1] = v.u32[2] = v.u32[3] = 1; >>> } >>> >>> - return nir_build_imm(b, 4, v); >>> + return nir_build_imm(b, 4, v, 32); >>> } >>> >>> static void >>> -- >>> 2.5.0 >>> >>> ___ >>> mesa-dev mailing list >>> mesa-dev@lists.freedesktop.org >>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev >> > ___ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev > ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 02/13] nir/builder: Add bit_size info to nir_build_imm()
On 12/04/16 17:24, Jason Ekstrand wrote: > On Apr 12, 2016 1:06 AM, "Samuel Iglesias Gonsálvez"> wrote: >> >> Signed-off-by: Samuel Iglesias Gonsálvez >> --- >> src/compiler/nir/nir_builder.h | 15 --- >> src/compiler/nir/nir_lower_system_values.c | 2 +- >> src/compiler/nir/nir_lower_tex.c | 2 +- >> 3 files changed, 10 insertions(+), 9 deletions(-) >> >> diff --git a/src/compiler/nir/nir_builder.h > b/src/compiler/nir/nir_builder.h >> index 38a1cf7..84fc9bf 100644 >> --- a/src/compiler/nir/nir_builder.h >> +++ b/src/compiler/nir/nir_builder.h >> @@ -89,10 +89,11 @@ nir_ssa_undef(nir_builder *build, unsigned > num_components, unsigned bit_size) >> } >> >> static inline nir_ssa_def * >> -nir_build_imm(nir_builder *build, unsigned num_components, > nir_const_value value) >> +nir_build_imm(nir_builder *build, unsigned num_components, >> + nir_const_value value, unsigned bit_size) > > Quick fly-by comment: can we keep num_components and bit_size together and > leave value as the last argument. The two sizes are kind of a logical pair > and them being separated be the value parameter seems wrong. > Agreed. I will do the change locally. Thanks! Sam >> { >> nir_load_const_instr *load_const = >> - nir_load_const_instr_create(build->shader, num_components, 32); >> + nir_load_const_instr_create(build->shader, num_components, > bit_size); >> if (!load_const) >>return NULL; >> >> @@ -111,7 +112,7 @@ nir_imm_float(nir_builder *build, float x) >> memset(, 0, sizeof(v)); >> v.f32[0] = x; >> >> - return nir_build_imm(build, 1, v); >> + return nir_build_imm(build, 1, v, 32); >> } >> >> static inline nir_ssa_def * >> @@ -125,7 +126,7 @@ nir_imm_vec4(nir_builder *build, float x, float y, > float z, float w) >> v.f32[2] = z; >> v.f32[3] = w; >> >> - return nir_build_imm(build, 4, v); >> + return nir_build_imm(build, 4, v, 32); >> } >> >> static inline nir_ssa_def * >> @@ -136,7 +137,7 @@ nir_imm_int(nir_builder *build, int x) >> memset(, 0, sizeof(v)); >> v.i32[0] = x; >> >> - return nir_build_imm(build, 1, v); >> + return nir_build_imm(build, 1, v, 32); >> } >> >> static inline nir_ssa_def * >> @@ -150,14 +151,14 @@ nir_imm_ivec4(nir_builder *build, int x, int y, int > z, int w) >> v.i32[2] = z; >> v.i32[3] = w; >> >> - return nir_build_imm(build, 4, v); >> + return nir_build_imm(build, 4, v, 32); >> } >> >> static inline nir_ssa_def * >> nir_imm_uint(nir_builder *build, unsigned x) >> { >> nir_const_value v = { { .u32 = {x, 0, 0, 0} } }; >> - return nir_build_imm(build, 1, v); >> + return nir_build_imm(build, 1, v, 32); >> } >> >> static inline nir_ssa_def * >> diff --git a/src/compiler/nir/nir_lower_system_values.c > b/src/compiler/nir/nir_lower_system_values.c >> index 2d3ccd7..8362619 100644 >> --- a/src/compiler/nir/nir_lower_system_values.c >> +++ b/src/compiler/nir/nir_lower_system_values.c >> @@ -75,7 +75,7 @@ convert_block(nir_block *block, void *void_state) >> nir_load_system_value(b, > nir_intrinsic_load_local_invocation_id, 0); >> >> sysval = nir_iadd(b, nir_imul(b, group_id, >> - nir_build_imm(b, 3, > local_size)), >> + nir_build_imm(b, 3, > local_size, 32)), >>local_id); >> break; >>} >> diff --git a/src/compiler/nir/nir_lower_tex.c > b/src/compiler/nir/nir_lower_tex.c >> index 4999603..47a3786 100644 >> --- a/src/compiler/nir/nir_lower_tex.c >> +++ b/src/compiler/nir/nir_lower_tex.c >> @@ -232,7 +232,7 @@ get_zero_or_one(nir_builder *b, nir_alu_type type, > uint8_t swizzle_val) >> v.u32[0] = v.u32[1] = v.u32[2] = v.u32[3] = 1; >> } >> >> - return nir_build_imm(b, 4, v); >> + return nir_build_imm(b, 4, v, 32); >> } >> >> static void >> -- >> 2.5.0 >> >> ___ >> mesa-dev mailing list >> mesa-dev@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev > ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 02/13] nir/builder: Add bit_size info to nir_build_imm()
On Apr 12, 2016 1:06 AM, "Samuel Iglesias Gonsálvez"wrote: > > Signed-off-by: Samuel Iglesias Gonsálvez > --- > src/compiler/nir/nir_builder.h | 15 --- > src/compiler/nir/nir_lower_system_values.c | 2 +- > src/compiler/nir/nir_lower_tex.c | 2 +- > 3 files changed, 10 insertions(+), 9 deletions(-) > > diff --git a/src/compiler/nir/nir_builder.h b/src/compiler/nir/nir_builder.h > index 38a1cf7..84fc9bf 100644 > --- a/src/compiler/nir/nir_builder.h > +++ b/src/compiler/nir/nir_builder.h > @@ -89,10 +89,11 @@ nir_ssa_undef(nir_builder *build, unsigned num_components, unsigned bit_size) > } > > static inline nir_ssa_def * > -nir_build_imm(nir_builder *build, unsigned num_components, nir_const_value value) > +nir_build_imm(nir_builder *build, unsigned num_components, > + nir_const_value value, unsigned bit_size) Quick fly-by comment: can we keep num_components and bit_size together and leave value as the last argument. The two sizes are kind of a logical pair and them being separated be the value parameter seems wrong. > { > nir_load_const_instr *load_const = > - nir_load_const_instr_create(build->shader, num_components, 32); > + nir_load_const_instr_create(build->shader, num_components, bit_size); > if (!load_const) >return NULL; > > @@ -111,7 +112,7 @@ nir_imm_float(nir_builder *build, float x) > memset(, 0, sizeof(v)); > v.f32[0] = x; > > - return nir_build_imm(build, 1, v); > + return nir_build_imm(build, 1, v, 32); > } > > static inline nir_ssa_def * > @@ -125,7 +126,7 @@ nir_imm_vec4(nir_builder *build, float x, float y, float z, float w) > v.f32[2] = z; > v.f32[3] = w; > > - return nir_build_imm(build, 4, v); > + return nir_build_imm(build, 4, v, 32); > } > > static inline nir_ssa_def * > @@ -136,7 +137,7 @@ nir_imm_int(nir_builder *build, int x) > memset(, 0, sizeof(v)); > v.i32[0] = x; > > - return nir_build_imm(build, 1, v); > + return nir_build_imm(build, 1, v, 32); > } > > static inline nir_ssa_def * > @@ -150,14 +151,14 @@ nir_imm_ivec4(nir_builder *build, int x, int y, int z, int w) > v.i32[2] = z; > v.i32[3] = w; > > - return nir_build_imm(build, 4, v); > + return nir_build_imm(build, 4, v, 32); > } > > static inline nir_ssa_def * > nir_imm_uint(nir_builder *build, unsigned x) > { > nir_const_value v = { { .u32 = {x, 0, 0, 0} } }; > - return nir_build_imm(build, 1, v); > + return nir_build_imm(build, 1, v, 32); > } > > static inline nir_ssa_def * > diff --git a/src/compiler/nir/nir_lower_system_values.c b/src/compiler/nir/nir_lower_system_values.c > index 2d3ccd7..8362619 100644 > --- a/src/compiler/nir/nir_lower_system_values.c > +++ b/src/compiler/nir/nir_lower_system_values.c > @@ -75,7 +75,7 @@ convert_block(nir_block *block, void *void_state) > nir_load_system_value(b, nir_intrinsic_load_local_invocation_id, 0); > > sysval = nir_iadd(b, nir_imul(b, group_id, > - nir_build_imm(b, 3, local_size)), > + nir_build_imm(b, 3, local_size, 32)), >local_id); > break; >} > diff --git a/src/compiler/nir/nir_lower_tex.c b/src/compiler/nir/nir_lower_tex.c > index 4999603..47a3786 100644 > --- a/src/compiler/nir/nir_lower_tex.c > +++ b/src/compiler/nir/nir_lower_tex.c > @@ -232,7 +232,7 @@ get_zero_or_one(nir_builder *b, nir_alu_type type, uint8_t swizzle_val) > v.u32[0] = v.u32[1] = v.u32[2] = v.u32[3] = 1; > } > > - return nir_build_imm(b, 4, v); > + return nir_build_imm(b, 4, v, 32); > } > > static void > -- > 2.5.0 > > ___ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
[Mesa-dev] [PATCH 02/13] nir/builder: Add bit_size info to nir_build_imm()
Signed-off-by: Samuel Iglesias Gonsálvez--- src/compiler/nir/nir_builder.h | 15 --- src/compiler/nir/nir_lower_system_values.c | 2 +- src/compiler/nir/nir_lower_tex.c | 2 +- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/compiler/nir/nir_builder.h b/src/compiler/nir/nir_builder.h index 38a1cf7..84fc9bf 100644 --- a/src/compiler/nir/nir_builder.h +++ b/src/compiler/nir/nir_builder.h @@ -89,10 +89,11 @@ nir_ssa_undef(nir_builder *build, unsigned num_components, unsigned bit_size) } static inline nir_ssa_def * -nir_build_imm(nir_builder *build, unsigned num_components, nir_const_value value) +nir_build_imm(nir_builder *build, unsigned num_components, + nir_const_value value, unsigned bit_size) { nir_load_const_instr *load_const = - nir_load_const_instr_create(build->shader, num_components, 32); + nir_load_const_instr_create(build->shader, num_components, bit_size); if (!load_const) return NULL; @@ -111,7 +112,7 @@ nir_imm_float(nir_builder *build, float x) memset(, 0, sizeof(v)); v.f32[0] = x; - return nir_build_imm(build, 1, v); + return nir_build_imm(build, 1, v, 32); } static inline nir_ssa_def * @@ -125,7 +126,7 @@ nir_imm_vec4(nir_builder *build, float x, float y, float z, float w) v.f32[2] = z; v.f32[3] = w; - return nir_build_imm(build, 4, v); + return nir_build_imm(build, 4, v, 32); } static inline nir_ssa_def * @@ -136,7 +137,7 @@ nir_imm_int(nir_builder *build, int x) memset(, 0, sizeof(v)); v.i32[0] = x; - return nir_build_imm(build, 1, v); + return nir_build_imm(build, 1, v, 32); } static inline nir_ssa_def * @@ -150,14 +151,14 @@ nir_imm_ivec4(nir_builder *build, int x, int y, int z, int w) v.i32[2] = z; v.i32[3] = w; - return nir_build_imm(build, 4, v); + return nir_build_imm(build, 4, v, 32); } static inline nir_ssa_def * nir_imm_uint(nir_builder *build, unsigned x) { nir_const_value v = { { .u32 = {x, 0, 0, 0} } }; - return nir_build_imm(build, 1, v); + return nir_build_imm(build, 1, v, 32); } static inline nir_ssa_def * diff --git a/src/compiler/nir/nir_lower_system_values.c b/src/compiler/nir/nir_lower_system_values.c index 2d3ccd7..8362619 100644 --- a/src/compiler/nir/nir_lower_system_values.c +++ b/src/compiler/nir/nir_lower_system_values.c @@ -75,7 +75,7 @@ convert_block(nir_block *block, void *void_state) nir_load_system_value(b, nir_intrinsic_load_local_invocation_id, 0); sysval = nir_iadd(b, nir_imul(b, group_id, - nir_build_imm(b, 3, local_size)), + nir_build_imm(b, 3, local_size, 32)), local_id); break; } diff --git a/src/compiler/nir/nir_lower_tex.c b/src/compiler/nir/nir_lower_tex.c index 4999603..47a3786 100644 --- a/src/compiler/nir/nir_lower_tex.c +++ b/src/compiler/nir/nir_lower_tex.c @@ -232,7 +232,7 @@ get_zero_or_one(nir_builder *b, nir_alu_type type, uint8_t swizzle_val) v.u32[0] = v.u32[1] = v.u32[2] = v.u32[3] = 1; } - return nir_build_imm(b, 4, v); + return nir_build_imm(b, 4, v, 32); } static void -- 2.5.0 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev