Dave Airlie
9787608091
gallium/tgsi: update with some newer gallium pieces
...
This updates the tgsi code from mesa, it introduces
changes necessary to deal with tessellation and doubles.
It also drops an unused saturate feature, which we didn't
use anyways.
9 years ago
Dave Airlie
bd64c81fc2
renderer: handle rendering to A8 surfaces.
...
I'm not sure this is 100% complete, piglit fbo-alpha now passes.
This was a guess as to why gnome-shell was broken, but I don't think
it was the correct one.
9 years ago
Dave Airlie
ee45480c5d
renderer: fix GLSL1.30 shader translation
...
If we were running on a GLSL 1.30 backend, shader translation
was broken.
9 years ago
Dave Airlie
031d582bc1
renderer: emit clip distances before emitting position
...
This fixes piglit fixed-clip-enables test.
9 years ago
Dave Airlie
92b00c978b
renderer: CLEANUP - remove TABs
...
I didn't do a good enough job last time at purging these.
9 years ago
Dave Airlie
25f4d39b50
virgl: use shader stencil export if it's available.
9 years ago
Dave Airlie
9921144812
shader: fix two sided color interpolation
...
We need to declare both colors if we declare one, so the
vertex and fragment shaders link.
Fixes glsl-1.10 interpolation* and glsl-1.30 interpolation*
9 years ago
Dave Airlie
674d730e90
shader: drop the unsupported file declaration for sampler views
...
These aren't required to be parsed, but we can them.
9 years ago
Dave Airlie
38f01a3daf
renderer: reorder some structs to remove holes
10 years ago
Dave Airlie
7e85c2f114
renderer: CLEANUP: whitespace and reindent
...
this uses the mesa coding style, pray I never have to do
this again.
strip all trailing whitespace as much as possible
10 years ago
Dave Airlie
aca150b35b
renderer: move explicit locations hack into shader cfg
10 years ago
Dave Airlie
ca23e98b22
renderer: CLEANUP: boolean/GLboolean -> bool
...
use stdbool.h as much as possible
some of the gallium code imported uses boolean
so leave it alone for now
10 years ago
Dave Airlie
1af42f7a98
renderer: emit prescale from geom shader when present
...
the scaling stuff needs to happen in the geom shader instead
of the vertex shader if a geom shader is present.
fixes: tests/spec/glsl-1.50/execution/geometry/core-inputs.shader_test
10 years ago
Dave Airlie
ae4c0331fb
renderer: handle clip distance input to frag shader
...
this fixes:
tests/spec/glsl-1.50/execution/geometry/clip-distance-itemized-copy.shader_test
tests/spec/glsl-1.50/execution/geometry/clip-distance-bulk-copy.shader_test
10 years ago
Dave Airlie
00850485f6
renderer: move glsl ver and processor to iterator prolog
...
for shaders with no declerations these were never happening.
fixes: tests/spec/glsl-1.50/execution/geometry/clip-distance-out-values.shader_test
10 years ago
Dave Airlie
80eaec7aef
renderer: fix clipvertex transform feedback
...
if we are emulating clipvertex we need to route transform
feedback correctly for it.
fixes ext_transform_feedback-builtin-varyings gl_ClipVertex
10 years ago
Dave Airlie
a0d6d28266
renderer: fix transform feedback for gl_Position
...
need to emit the position before the winsys adjust happens.
fixes ext_transform_feedback-builtin-varyings gl_Position
10 years ago
Marc-André Lureau
043320c4f1
shader: better type promotion for comparison op
...
This is an improvement from ee7852525: the right source type is
used.
Fixes piglit spec/glsl-1.50/execution/built-in-functions/gs-equal-ivec2-ivec2
10 years ago
Marc-André Lureau
400c7df8b5
shader: use uint comparison for UCMP
...
Fixes a few piglit tests, such as:
spec/glsl-1.30/execution/switch/fs-default_last
10 years ago
Marc-André Lureau
7f050c7e5b
shader: restore the original CMP
...
e4880f6b
broke the original CMP translation that looks correct
10 years ago
Marc-André Lureau
002354dd91
shader: use writemask for op1
...
Fixes piglit glsl-vec-array test
10 years ago
Dave Airlie
26aa5bf620
renderer: remove unneeded printf
10 years ago
Dave Airlie
803e90e76a
renderer: fix frontfacing conversion from TGSI->GLSL
...
TGSI expects -1.0, 1.0, GLSL is 0.0, 1.0 so convert.
Alternate fix to Marc-Andre's fix.
10 years ago
Marc-André Lureau
fc7e0ef0fb
shader: add a check for number of imm and ubo
...
I think UBO limit is 32, but IMM is not, so we better had some checks to
avoid overflow
10 years ago
Dave Airlie
9e5bd0dbf0
renderer: handle illegal so values better
...
This stops the guest from crashing the parser here,
if it gives us so entries that are invalid.
10 years ago
Dave Airlie
c13ac6fcd5
renderer: limit immediates to a higher number
...
varying-packing-simple float separate was overflowing
the immediate pool, so add a limit, then increase
the limit so test passes.
10 years ago
Dave Airlie
dac4578a37
renderer: make sure to get glsl 1.50 for interface blocks
...
we can't emit an interface block in glsl 1.40
10 years ago
Dave Airlie
cba784dfaf
renderer: add arb_texture_gather support
...
This just adds support for the basic TG4 opcode,
the GS5 variant is a bit more work.
10 years ago
Dave Airlie
c66f8b23d9
renderer: add support for ARB_texture_query_levels
10 years ago
Dave Airlie
3f4e3e1cad
renderer: add support for ARB_viewport_array
10 years ago
Dave Airlie
78370e879f
renderer: add initial texture_query_lod support
10 years ago
Marc-André Lureau
b6971e08b8
shader: ignore empty color mask in emit_color_select()
...
Fixes piglit interpolation-flat-other-flat-none.shader_test
10 years ago
Marc-André Lureau
dd954de6e0
shader: fix uniform buffer object size
...
Size of array is Range.Last+1, like other declarations
Fixes piglit spec/glsl-1.40/uniform_buffer/fs-basic
10 years ago
Marc-André Lureau
e4880f6bd3
shader: fix UCMP translation
10 years ago
Marc-André Lureau
ee78525252
shader: promote type for comparison with same type
...
Fixes some piglit test.
10 years ago
Dave Airlie
57646ceb4e
gallium: import more bits
10 years ago
Dave Airlie
03e3116a75
import latest renderer code
10 years ago
Dave Airlie
a3a2c64cd6
initial import of standalone renderer
11 years ago