Francisco Jerez
099b81396e
nv50/ir: Allow inserting isolated nodes to a graph.
2012-04-14 21:54:00 +02:00
Francisco Jerez
1829484458
nv50/ir: Fix memory corruption in Function::orderInstructions().
...
"iter" doesn't reference a BasicBlock directly, but a Node::Graph,
i.e. BasicBlock::get() is casting to the wrong pointer type.
2012-04-14 21:54:00 +02:00
Francisco Jerez
ab382fbc35
nv50/ir: Fix up insertion of PHI instructions using bb->insertHead().
2012-04-14 21:54:00 +02:00
Christoph Bumiller
fc740e7924
nv50/ir: fix insertHead and remove for BBs with PHI ops only
2012-04-14 21:54:00 +02:00
Francisco Jerez
349cb60ed5
nv50/ir: Don't crash on zero sized BitSets.
2012-04-14 21:54:00 +02:00
Francisco Jerez
f0a7ec9a2f
nv50/ir: Fix Interval::clear().
2012-04-14 21:53:59 +02:00
Christoph Bumiller
cd6d63fa60
nv50/ir/tgsi: handle inferSrcType(NOT) to be u32
2012-04-14 21:53:59 +02:00
Francisco Jerez
658c0bee71
nv50/ir/opt: Fix OP_NOT to modifier conversion.
2012-04-14 21:53:59 +02:00
Brian Paul
f09910f399
nv50: add assertions missed in earlier nv50 commit
2012-02-01 08:22:16 -07:00
Brian Paul
541bb2e33f
nv50: use larger arrays to silence warnings and fix buffer overflows
...
The warnings were:
nv50_pc_regalloc.c: In function ‘pass_generate_phi_movs’:
nv50_pc_regalloc.c:423:41: warning: array subscript is above array bounds
codegen/nv50_ir_peephole.cpp: In member function ‘bool nv50_ir::MemoryOpt::replaceStFromSt(nv50_ir::Instruction*, nv50_ir::MemoryOpt::Record*)’:
codegen/nv50_ir_peephole.cpp:1475:18: warning: array subscript is above array bounds
codegen/nv50_ir_peephole.cpp:1475:18: warning: array subscript is above array bounds
codegen/nv50_ir_peephole.cpp:1475:18: warning: array subscript is above array bounds
codegen/nv50_ir_peephole.cpp:1475:18: warning: array subscript is above array bounds
And add some assertions to catch this sooner in debug builds.
2012-02-01 07:19:54 -07:00
Christoph Bumiller
af0ce1dba8
nv50/ir: make use of TGSI_INTERPOLATE_COLOR
...
Flat SHADE_MODEL still overrides any non-flat interpolation
qualifier, but pulling that state out of the rasterizer cso
isn't really worth the effort, is it ?
NOTE: This is a candidate for the 8.0 branch.
2012-01-12 22:38:01 +01:00
Christoph Bumiller
7b6881932a
nvc0: fix submission of VertexID and EdgeFlag in push mode
...
NOTE: This is a candidate for the 8.0 branch.
2012-01-12 22:38:01 +01:00
Christoph Bumiller
b424bf69df
nv50/ir: handle TGSI_OPCODE_ISSG
2012-01-11 20:26:58 +01:00
Christoph Bumiller
9d503992d7
nv50/ir: handle TGSI_TEXTURE_SHADOWCUBE
2012-01-11 20:26:52 +01:00
Christoph Bumiller
7fd802b96c
nv50/ir: handle TGSI_SEMANTIC_VERTEXID
2012-01-10 00:39:35 +01:00
Christoph Bumiller
ca03372657
nv50/ir/tgsi: translate SNE as unordered comparison
...
Fixes isnan().
2012-01-10 00:39:29 +01:00
Christoph Bumiller
4021979182
nv50/ir/ra: don't coalesce contraint-moves
...
This could lead to incorrect code when fixed regs are involved.
Surprisingly, the increased freedom actually leads to lower
register usage in some cases. Still want to find a better way
to treat constraints though ...
2012-01-10 00:39:12 +01:00
Christoph Bumiller
be1ae976a4
nv50/ir/tgsi: handle TGSI_OPCODE_IABS
2012-01-10 00:37:47 +01:00
Christoph Bumiller
ae828413c4
nv50/ir/opt: optimize u32 MOD by power of 2 into AND
2012-01-10 00:37:37 +01:00
Christoph Bumiller
6ab6110133
nv50/ir/opt: s/SHL/SHR in optimization of u32 DIV
2012-01-10 00:37:32 +01:00
Christoph Bumiller
b85e93c0ca
nv50/ir,nvc0: make ClipDistance and ClipVertex work
2012-01-10 00:37:19 +01:00
Ben Skeggs
4517153278
nvc0: add support for GF119 (NVD9)
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2011-11-17 10:17:06 +10:00
Christoph Bumiller
bb0482a55b
nv50/ir: import SM4 converter
2011-10-21 23:00:40 +02:00
Christoph Bumiller
44c23e9052
nvc0: fixes for program tessellation parameters
2011-10-21 23:00:39 +02:00
Christoph Bumiller
52c8c52b22
nv50/ir: use RDSV to fetch FrontFacing before lowering
2011-10-21 23:00:39 +02:00
Christoph Bumiller
9c930639d9
nv50/ir: fix textureGrad with offsets and in non-FPs
2011-10-21 23:00:39 +02:00
Christoph Bumiller
0e4e0ca6df
nv50/ir: add wrap mode for shift operations
...
D3D1x specifies that only the low 5 bit of the shift are used.
2011-10-21 23:00:39 +02:00
Christoph Bumiller
974102c7c2
nv50/ir: initialize RelocInfo to 0
2011-10-21 23:00:38 +02:00
Christoph Bumiller
37a08ddce5
nv50/ir: fix argument count for CUBE_ARRAY texture target
2011-10-21 23:00:38 +02:00
Christoph Bumiller
6b27f14680
nv50/ir: initialize default prog_info values for GP,TP
2011-10-21 23:00:38 +02:00
Christoph Bumiller
63ca1abcc4
nv50/ir: fix memory value equality check
2011-10-21 23:00:38 +02:00
Christoph Bumiller
e3a3844e8d
nv50/ir: fix leak in removal of graph root
2011-10-21 23:00:38 +02:00
Christoph Bumiller
d2d19ea51f
nv50/ir: add missing license headers
2011-09-14 16:50:23 +02:00
Christoph Bumiller
57594065c3
nv50/ir: import new shader backend code
2011-09-14 16:19:52 +02:00