search for: for_each_dst_enabled_channel

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

2014 May 21
2
[Mesa-dev] [PATCH 04/12] nv50/ir/tgsi: TGSI_OPCODE_POW replicates its result
...t; case TGSI_OPCODE_UMUL_HI: > case TGSI_OPCODE_OR: > - case TGSI_OPCODE_POW: > case TGSI_OPCODE_SHL: > case TGSI_OPCODE_ISHR: > case TGSI_OPCODE_USHR: > @@ -2254,6 +2253,11 @@ Converter::handleInstruction(const struct tgsi_full_instruction *insn) > FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) > mkOp1(OP_MOV, TYPE_U32, dst0[c], fetchSrc(0, c)); > break; > + case TGSI_OPCODE_POW: > + val0 = mkOp2v(op, TYPE_F32, getScratch(), fetchSrc(0, 0), fetchSrc(1, 0)); > + FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) > + mkOp1(OP_MOV, TYP...
2014 May 21
2
[Mesa-dev] [PATCH 04/12] nv50/ir/tgsi: TGSI_OPCODE_POW replicates its result
...GSI_OPCODE_OR: >>> - case TGSI_OPCODE_POW: >>> case TGSI_OPCODE_SHL: >>> case TGSI_OPCODE_ISHR: >>> case TGSI_OPCODE_USHR: >>> @@ -2254,6 +2253,11 @@ Converter::handleInstruction(const struct tgsi_full_instruction *insn) >>> FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) >>> mkOp1(OP_MOV, TYPE_U32, dst0[c], fetchSrc(0, c)); >>> break; >>> + case TGSI_OPCODE_POW: >>> + val0 = mkOp2v(op, TYPE_F32, getScratch(), fetchSrc(0, 0), fetchSrc(1, 0)); >>> + FOR_EACH_DST_ENABLED_CHANNEL(0, c...
2015 Feb 20
10
[PATCH 01/11] nvc0/ir: add emission of dadd/dmul/dmad opcodes, fix minmax
Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu> --- .../drivers/nouveau/codegen/nv50_ir_emit_nvc0.cpp | 66 +++++++++++++++++++++- 1 file changed, 63 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nvc0.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nvc0.cpp index dfb093c..e38a3b8 100644 ---
2014 May 20
0
[PATCH 04/12] nv50/ir/tgsi: TGSI_OPCODE_POW replicates its result
...*insn) case TGSI_OPCODE_IMUL_HI: case TGSI_OPCODE_UMUL_HI: case TGSI_OPCODE_OR: - case TGSI_OPCODE_POW: case TGSI_OPCODE_SHL: case TGSI_OPCODE_ISHR: case TGSI_OPCODE_USHR: @@ -2254,6 +2253,11 @@ Converter::handleInstruction(const struct tgsi_full_instruction *insn) FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) mkOp1(OP_MOV, TYPE_U32, dst0[c], fetchSrc(0, c)); break; + case TGSI_OPCODE_POW: + val0 = mkOp2v(op, TYPE_F32, getScratch(), fetchSrc(0, 0), fetchSrc(1, 0)); + FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) + mkOp1(OP_MOV, TYPE_F32, dst0[c], val0); +...
2014 May 21
0
[Mesa-dev] [PATCH 04/12] nv50/ir/tgsi: TGSI_OPCODE_POW replicates its result
..._HI: >> case TGSI_OPCODE_OR: >> - case TGSI_OPCODE_POW: >> case TGSI_OPCODE_SHL: >> case TGSI_OPCODE_ISHR: >> case TGSI_OPCODE_USHR: >> @@ -2254,6 +2253,11 @@ Converter::handleInstruction(const struct tgsi_full_instruction *insn) >> FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) >> mkOp1(OP_MOV, TYPE_U32, dst0[c], fetchSrc(0, c)); >> break; >> + case TGSI_OPCODE_POW: >> + val0 = mkOp2v(op, TYPE_F32, getScratch(), fetchSrc(0, 0), fetchSrc(1, 0)); >> + FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) >> +...
2014 May 21
0
[Mesa-dev] [PATCH 04/12] nv50/ir/tgsi: TGSI_OPCODE_POW replicates its result
...gt;> - case TGSI_OPCODE_POW: >>>> case TGSI_OPCODE_SHL: >>>> case TGSI_OPCODE_ISHR: >>>> case TGSI_OPCODE_USHR: >>>> @@ -2254,6 +2253,11 @@ Converter::handleInstruction(const struct tgsi_full_instruction *insn) >>>> FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) >>>> mkOp1(OP_MOV, TYPE_U32, dst0[c], fetchSrc(0, c)); >>>> break; >>>> + case TGSI_OPCODE_POW: >>>> + val0 = mkOp2v(op, TYPE_F32, getScratch(), fetchSrc(0, 0), fetchSrc(1, 0)); >>>> + FOR_EACH_DST_...
2014 May 20
14
[PATCH 00/12] Cherry-pick nv50/nvc0 patches from gallium-nine
I went through the gallium-nine tree and picked out nouveau patches that are general bug-fixes. The first bunch I'd like to also get into 10.2. I've reviewed all of them and they make sense to me, but sending them out for public review as well in case there are any objections. Unless I hear objections, I'd like to push this by Friday. Christoph Bumiller (11): nv50,nvc0: always pull
2016 Mar 16
2
[PATCH mesa 6/6] nouveau: codegen: Disable more old resource handling code
...assert(!"Unsupported srcFile for LOAD"); > } > > +/* Keep this around for now as reference when adding img support > getResourceCoords(off, r, 1); > > if (isResourceRaw(code, r)) { > @@ -2363,6 +2371,7 @@ Converter::handleLOAD(Value *dst0[4]) > FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) > if (dst0[c] != def[c]) > mkMov(dst0[c], def[tgsi.getSrc(0).getSwizzle(c)]); > +*/ > } > > // For formatted stores, the write mask on OP_SUSTP can be used. > @@ -2374,8 +2383,9 @@ Converter::handleSTORE() > int c; > std::vecto...
2016 Mar 17
4
[PATCH mesa v2 1/3] nouveau: codegen: Disable more old resource handling code
...is not allowed. @@ -2290,6 +2294,7 @@ Converter::handleLOAD(Value *dst0[4]) return; } +/* Keep this around for now as reference when adding img support getResourceCoords(off, r, 1); if (isResourceRaw(code, r)) { @@ -2355,6 +2360,7 @@ Converter::handleLOAD(Value *dst0[4]) FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) if (dst0[c] != def[c]) mkMov(dst0[c], def[tgsi.getSrc(0).getSwizzle(c)]); +*/ } // For formatted stores, the write mask on OP_SUSTP can be used. @@ -2391,6 +2397,7 @@ Converter::handleSTORE() return; } +/* Keep this around for now as reference when addi...
2016 Mar 16
0
[PATCH mesa 6/6] nouveau: codegen: Disable more old resource handling code
...eturn; + break; + default: + assert(!"Unsupported srcFile for LOAD"); } +/* Keep this around for now as reference when adding img support getResourceCoords(off, r, 1); if (isResourceRaw(code, r)) { @@ -2363,6 +2371,7 @@ Converter::handleLOAD(Value *dst0[4]) FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) if (dst0[c] != def[c]) mkMov(dst0[c], def[tgsi.getSrc(0).getSwizzle(c)]); +*/ } // For formatted stores, the write mask on OP_SUSTP can be used. @@ -2374,8 +2383,9 @@ Converter::handleSTORE() int c; std::vector<Value *> off, src, dummy; - if (tgsi....
2016 Mar 16
0
[PATCH mesa 6/6] nouveau: codegen: Disable more old resource handling code
...le for LOAD"); >> } >> >> +/* Keep this around for now as reference when adding img support >> getResourceCoords(off, r, 1); >> >> if (isResourceRaw(code, r)) { >> @@ -2363,6 +2371,7 @@ Converter::handleLOAD(Value *dst0[4]) >> FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) >> if (dst0[c] != def[c]) >> mkMov(dst0[c], def[tgsi.getSrc(0).getSwizzle(c)]); >> +*/ >> } >> >> // For formatted stores, the write mask on OP_SUSTP can be used. >> @@ -2374,8 +2383,9 @@ Converter::handleSTORE() >>...
2014 Jan 13
20
[PATCH 00/19] nv50: add sampler2DMS/GP support to get OpenGL 3.2
OK, so there's a bunch of stuff in here. The geometry stuff is based on the work started by Bryan Cain and Christoph Bumiller. Patches 01-12: Add support for geometry shaders and fix related issues Patches 13-14: Make it possible for fb clears to operate on texture attachments with an explicit layer set (as is allowed in gl 3.2). Patches 15-17: Make ARB_texture_multisample work
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
2016 Mar 16
13
[PATCH mesa 1/6] tgsi_build: Fix return of uninitialized memory in tgsi_*_instruction_memory
tgsi_default_instruction_memory / tgsi_build_instruction_memory were returning uninitialized memory for tgsi_instruction_memory.Texture and tgsi_instruction_memory.Format. Note 0 means not set, and thus is a correct default initializer for these. Fixes: 3243b6fc97 ("tgsi: add Texture and Format to tgsi_instruction_memory") Cc: Nicolai Hähnle <nicolai.haehnle at amd.com>