search for: ureg_src

Displaying 14 results from an estimated 14 matches for "ureg_src".

2017 Jun 11
0
[RFC 4/9] tgsi: populate precise
...out[0].insn.Saturate = saturate; + out[0].insn.Precise = precise; out[0].insn.NumDstRegs = num_dst; out[0].insn.NumSrcRegs = num_src; @@ -1354,7 +1356,8 @@ ureg_insn(struct ureg_program *ureg, const struct ureg_dst *dst, unsigned nr_dst, const struct ureg_src *src, - unsigned nr_src ) + unsigned nr_src, + unsigned precise ) { struct ureg_emit_insn_result insn; unsigned i; @@ -1369,6 +1372,7 @@ ureg_insn(struct ureg_program *ureg, insn = ureg_emit_insn(ureg, opcode,...
2017 Jun 11
14
[RFC 0/9] Add precise/invariant semantics to TGSI
Running Tomb Raider on Nouveau I found some flicker caused by ignoring precise modifiers on variables inside Nouveau. This series add precise/invariant handling to TGSI, which can be then used by drivers to disable certain unsafe optimisations which may otherwise alter calculations, which depend on having the same result across shaders. This series fixes this bug in Tomb Raider and one CTS test
2015 Aug 27
2
gallium state tracker calls calloc for 0 sizes arrays ?
...ce recording of the a single slide transition animation, and since I suspected memory corruption replayed it using ElectrFence + glretrace, this finds a 0 sized array allocation at src/mesa/state_tracker/st_glsl_to_tgsi.cpp: 5565: if (proginfo->Parameters) { t->constants = (struct ureg_src *) calloc(proginfo->Parameters->NumParameters, sizeof(t->constants[0])); And if I protect the code against that one, another one at 5618: t->immediates = (struct ureg_src *) calloc(program->num_immediates, sizeof(struct ureg_src)); With the regular glibc mallo...
2016 Mar 10
8
[PATCH mesa 0/3] tgsi and nouveau global / local / opencl-input mem support
Hi, Here are patches which implement the support for OpenCL kernel input parameters we discussed. They also add the tgsi parsing bits for adding support for global / local mem, but no implementation yet. Regards, Hans
2016 Mar 10
1
[Mesa-dev] [PATCH mesa 2/3] tgsi: Add support for global / local / input MEMORY
...liary/tgsi/tgsi_ureg.c > @@ -190,7 +190,7 @@ struct ureg_program > > struct ureg_tokens domain[2]; > > - bool use_shared_memory; > + bool use_memory[TGSI_MEMORY_TYPE_COUNT]; > }; > > static union tgsi_any_token error_tokens[32]; > @@ -729,13 +729,14 @@ struct ureg_src ureg_DECL_buffer(struct ureg_program > *ureg, unsigned nr, > return reg; > } > > -/* Allocate a shared memory area. > +/* Allocate a memory area. > */ > -struct ureg_src ureg_DECL_shared_memory(struct ureg_program *ureg) > +struct ureg_src ureg_DECL_memory(struct u...
2015 Aug 27
2
[Mesa-dev] gallium state tracker calls calloc for 0 sizes arrays ?
...; animation, and since I suspected memory corruption replayed >> it using ElectrFence + glretrace, this finds a 0 sized array >> allocation at src/mesa/state_tracker/st_glsl_to_tgsi.cpp: 5565: >> >> if (proginfo->Parameters) { >> t->constants = (struct ureg_src *) >> calloc(proginfo->Parameters->NumParameters, >> sizeof(t->constants[0])); >> >> And if I protect the code against that one, another one at 5618: >> >> t->immediates = (struct ureg_src *) >> calloc(program->num_immedi...
2016 Mar 16
5
[PATCH mesa v2 1/3] tgsi: Fix decl.Atomic and .Shared not propagating when parsing tgsi text
When support for decl.Atomic and .Shared was added, tgsi_build_declaration was not updated to propagate these properly. Signed-off-by: Hans de Goede <hdegoede at redhat.com> Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu> --- Changes in v2: -Add Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu> --- src/gallium/auxiliary/tgsi/tgsi_build.c | 6 ++++++ 1 file changed, 6
2016 Mar 10
0
[PATCH mesa 2/3] tgsi: Add support for global / local / input MEMORY
...iary/tgsi/tgsi_ureg.c +++ b/src/gallium/auxiliary/tgsi/tgsi_ureg.c @@ -190,7 +190,7 @@ struct ureg_program struct ureg_tokens domain[2]; - bool use_shared_memory; + bool use_memory[TGSI_MEMORY_TYPE_COUNT]; }; static union tgsi_any_token error_tokens[32]; @@ -729,13 +729,14 @@ struct ureg_src ureg_DECL_buffer(struct ureg_program *ureg, unsigned nr, return reg; } -/* Allocate a shared memory area. +/* Allocate a memory area. */ -struct ureg_src ureg_DECL_shared_memory(struct ureg_program *ureg) +struct ureg_src ureg_DECL_memory(struct ureg_program *ureg, +...
2016 Mar 16
0
[PATCH mesa v2 2/3] tgsi: Add support for global / private / input MEMORY
...iary/tgsi/tgsi_ureg.c +++ b/src/gallium/auxiliary/tgsi/tgsi_ureg.c @@ -190,7 +190,7 @@ struct ureg_program struct ureg_tokens domain[2]; - bool use_shared_memory; + bool use_memory[TGSI_MEMORY_TYPE_COUNT]; }; static union tgsi_any_token error_tokens[32]; @@ -729,13 +729,14 @@ struct ureg_src ureg_DECL_buffer(struct ureg_program *ureg, unsigned nr, return reg; } -/* Allocate a shared memory area. +/* Allocate a memory area. */ -struct ureg_src ureg_DECL_shared_memory(struct ureg_program *ureg) +struct ureg_src ureg_DECL_memory(struct ureg_program *ureg, +...
2016 Mar 10
0
[Mesa-dev] [PATCH mesa 2/3] tgsi: Add support for global / local / input MEMORY
...190,7 @@ struct ureg_program >> >> struct ureg_tokens domain[2]; >> >> - bool use_shared_memory; >> + bool use_memory[TGSI_MEMORY_TYPE_COUNT]; >> }; >> >> static union tgsi_any_token error_tokens[32]; >> @@ -729,13 +729,14 @@ struct ureg_src ureg_DECL_buffer(struct ureg_program >> *ureg, unsigned nr, >> return reg; >> } >> >> -/* Allocate a shared memory area. >> +/* Allocate a memory area. >> */ >> -struct ureg_src ureg_DECL_shared_memory(struct ureg_program *ureg) >> +st...
2009 Dec 31
1
[PATCH] Autogenerate uureg opcode macros
...> +EOF + +cat - <<EOF + +#endif +EOF + diff --git a/src/gallium/programs/galliumut/uureg.h b/src/gallium/programs/galliumut/uureg.h index a2d07a7..d30e188 100644 --- a/src/gallium/programs/galliumut/uureg.h +++ b/src/gallium/programs/galliumut/uureg.h @@ -60,7 +60,7 @@ static inline struct ureg_src _src(const struct ureg_src& src) {return src;} #define _OUTPUT(v, n, i) struct ureg_dst v = ureg_DECL_output(ureg, TGSI_SEMANTIC_##n, i) #define _CONST_(v, i) struct ureg_src v = ureg_DECL_constant(ureg, i) #define _CONST(v, s) UREG_CONST(v, ureg, s) - #define _CONST_MAT3(v, s) UREG_CONST_MA...
2015 Aug 27
3
[Mesa-dev] gallium state tracker calls calloc for 0 sizes arrays ?
...y corruption replayed >>>> it using ElectrFence + glretrace, this finds a 0 sized array >>>> allocation at src/mesa/state_tracker/st_glsl_to_tgsi.cpp: 5565: >>>> >>>> if (proginfo->Parameters) { >>>> t->constants = (struct ureg_src *) >>>> calloc(proginfo->Parameters->NumParameters, >>>> sizeof(t->constants[0])); >>>> >>>> And if I protect the code against that one, another one at 5618: >>>> >>>> t->immediates = (struct ureg_src...
2017 Jun 11
0
[RFC 3/9] st/glsl_to_tgsi: handle precise modifier
...@@ static int swizzle_for_type(const glsl_type *type, int component = 0) return swizzle; } +static unsigned is_precise(const ir_variable *ir) +{ + if (!ir) + return 0; + return ir->data.precise || ir->data.invariant; +} + /** * This struct is a corresponding struct to TGSI ureg_src. */ @@ -296,6 +303,7 @@ public: ir_instruction *ir; unsigned op:8; /**< TGSI opcode */ + unsigned precise:1; unsigned saturate:1; unsigned is_64bit_expanded:1; unsigned sampler_base:5; @@ -435,6 +443,7 @@ public: bool have_fma; bool use_shared_memory; bool h...
2010 Aug 06
4
nv vpe video decoder
Hello, I have my work on the nv vpe video decoder in a functional state. In case you didn't know this decoder accelerates mpeg2 video at the idct/mc level. I have verified that it works on nv40 hardware. I believe it works on nv30 hardware (and maybe some earlier hardware), but I cannot verify since I have none. I will reply with patches against the kernel, drm, ddx and mesa for