summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/svga
AgeCommit message (Collapse)Author
2010-09-20svga: Integer constant register file has a separate namespace.Michal Krol
Count int and float constants independently. Since there are only few i# constants available and hundreds of c# constants, it would be too easy to end up with an i# declaration out of its range.
2010-09-20svga: Fix relative addressing translation for pixel shaders.Michal Krol
Pixel shaders do not have address registers a#, only one loop register aL. Our only hope is to assume the address register is in fact a loop counter and replace it with aL. Do not translate ARL instruction for pixel shaders -- MOVA instruction is only valid for vertex saders. Make it more explicit relative addressing of inputs is only valid for pixel shaders and constants for vertex shaders.
2010-09-14gallium: introduce get_shader_param (ALL DRIVERS CHANGED) (v3)Luca Barbieri
Changes in v3: - Also change trace, which I forgot about Changes in v2: - No longer adds tessellation shaders Currently each shader cap has FS and VS versions. However, we want a version of them for geometry, tessellation control, and tessellation evaluation shaders, and want to be able to easily query a given cap type for a given shader stage. Since having 5 duplicates of each shader cap is unmanageable, add a new get_shader_param function that takes both a shader cap from a new enum and a shader stage. Drivers with non-unified shaders will first switch on the shader and, within each case, switch on the cap. Drivers with unified shaders instead first check whether the shader is supported, and then switch on the cap. MAX_CONST_BUFFERS is now per-stage. The geometry shader cap is removed in favor of checking whether the limit of geometry shader instructions is greater than 0, which is also used for tessellation shaders. WARNING: all drivers changed and compiled but only nvfx tested
2010-08-30svga: Fix CMP translation for vertex shader targets.Michal Krol
SVGA3DOP_CMP is not supported for vertex shaders; use SLT + LRP instead.
2010-08-30svga: Re-emit bound rendertargets and texture samplers at the beginning of ↵José Fonseca
every command buffer. Only non null resources. To ensure that relocations are emitted for every resource currently referred.
2010-08-25draw: specialized cliptesting routinesKeith Whitwell
2010-08-25gallium: Use draw_set_index_buffer and others.Chia-I Wu
Update all drivers to use draw_set_index_buffer, draw_set_mapped_index_buffer, and draw_vbo. Remove draw_set_mapped_element_buffer and draw_set_mapped_element_buffer_range.
2010-08-25svga: Remove redundant svga_draw_range_elements.Chia-I Wu
That is, implement draw_vbo directly. As a result, svga_swtnl_draw_range_elements is also replaced by svga_swtnl_draw_vbo. This commit should not have any functional change.
2010-08-22svga: Do not shortcut NULL surface relocations with SVGA3D_INVALID_ID.José Fonseca
How to cope with NULL surface relocations should be entirely at winsys' discretion.
2010-08-20gallium: make all checks for PIPE_TEXTURE_2D check for PIPE_TEXTURE_RECT tooLuca Barbieri
Searched for them with: git grep -E '[!=]=.*PIPE_TEXTURE_2D|PIPE_TEXTURE_2D.*[!=]=|case.*PIPE_TEXTURE_2D' Behavior hasn't been changed.
2010-07-29gallium: Keep only pipe_context::draw_vbo.Chia-I Wu
That is, remove pipe_context::draw_arrays, pipe_context::draw_elements, pipe_context::draw_arrays_instanced, pipe_context::draw_elements_instanced, pipe_context::draw_range_elements.
2010-07-29gallium: Implement draw_vbo and set_index_buffer for all drivers.Chia-I Wu
Some drivers define a generic function that is called by all drawing functions. To implement draw_vbo for such drivers, either draw_vbo calls the generic function or the prototype of the generic function is changed to match draw_vbo. Other drivers have no such generic function. draw_vbo is implemented by calling either draw_arrays and draw_elements. For most drivers, set_index_buffer does not mark the state dirty for tracking. Instead, the index buffer state is emitted whenever draw_vbo is called, just like the case with draw_elements. It surely can be improved.
2010-06-28Merge branch 'gallium-drm-driver-drescriptor'Jakob Bornecrantz
Conflicts: src/gallium/state_trackers/egl/x11/native_dri2.c src/gallium/state_trackers/egl/x11/native_x11.c src/gallium/state_trackers/egl/x11/native_x11.h src/gallium/state_trackers/xorg/xorg_driver.c src/gallium/winsys/radeon/drm/radeon_drm.c
2010-06-08gallium: adjust the query interface to support custom typesZack Rusin
we need to change it to support composite types
2010-06-06svga: Move bootstrap code to targetsJakob Bornecrantz
2010-06-03svga: Remove unnecessary header.Vinson Lee
2010-06-03Merge branch 'gallium-newclear'Roland Scheidegger
Conflicts: src/gallium/state_trackers/python/p_context.i
2010-06-03gallium: silence all debug_named_value related warningsJoakim Sindholt
2010-05-31svga: Add a winsys callback to get the svga_winsys_contextThomas Hellstrom
The winsys may need to extract the svga_winsys_context from a pipe_context. Add a function to enable that functionality. Cherry-picked from commit e8a8c5e339dfd7a36bb6435fd34175482b9187b8 Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
2010-05-29svga: adapt to clear interface changesRoland Scheidegger
this should support separate stencil/depth clears just fine.
2010-05-21Merge branch 'gallium-msaa'Roland Scheidegger
Conflicts: src/mesa/state_tracker/st_gen_mipmap.c src/mesa/state_tracker/st_texture.c
2010-05-21Merge branch 'gallium-front-ccw'Keith Whitwell
2010-05-18gallium: implement set_sample_mask() in all driversRoland Scheidegger
prevents segfault when state trackers try to set default mask. Other option would be to make this required only for drivers supporting multisampling, but this seems more clean. Only dummy implementations (for normal drivers) provided (no driver supports multisampling yet neither).
2010-05-17svga: adapt to interface changesRoland Scheidegger
might need further cleanup. Using surfaces internally just to be able to use the existing code might cause unnecessary copies afaict.
2010-05-14gallium: more work on ccw flag removalKeith Whitwell
The linux-debug target builds...
2010-05-14gallium: convert rasterizer state to use gl-style front/back conceptsKeith Whitwell
Use front/back instead of cw/ccw throughout. Also, use offset_point/line/fill instead of offset_cw/ccw. Brings gallium representation of this state into line with its main user, and also what turns out to be the most common hardware representation. This fixes a long-standing bias in the interface towards the architecture of the software rasterizer.
2010-05-12svga: Advertise shader limits.José Fonseca
2010-05-12gallium: Make PIPE_CAP_xxx enums.José Fonseca
2010-05-10svga: Fill in is_resource_referenced callback.José Fonseca
2010-05-05gallium: rename draw() to draw_elements() in vbuf codeBrian Paul
Now we have draw_elements() and draw_arrays() to be consistent with the pipe_context drawing functions.
2010-05-04svga: Remove unnecessary header.Vinson Lee
2010-05-03svga: Silent warning.José Fonseca
2010-05-03svga: Remove the screen private context.José Fonseca
All affected operations have already been moved to context. More cleanup work can be done, in particular with the buffer transfers.
2010-05-03svga: Remove empty file.José Fonseca
2010-05-03svga: Update flags documentation.José Fonseca
2010-05-02svga: Include svga_surface.h in svga_screen.c.Vinson Lee
Fixes svga_screen_init_surface_functions implicit declaration warning.
2010-05-17gallium: EXT_timer_query support.Mathias Fröhlich
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2010-05-14gallium: remove forward declarations of non-existent objectsMarek Olšák
2010-04-21svga: Fix index offsetJakob Bornecrantz
2010-04-20svga: Init surface functionsJakob Bornecrantz
2010-04-19svga: More don't recurseJakob Bornecrantz
2010-04-19svga: Don't recurseJakob Bornecrantz
2010-04-27svga: Drop BGNFOR, ENDFOR, REP, and ENDREP opcodes.José Fonseca
2010-04-26svga: Pass-through max_index to translate.José Fonseca
2010-04-24svga: D3DCOLOR actually stands for B8G8R8A8.José Fonseca
2010-04-24svga: Translate recently added vertex formats.José Fonseca
2010-04-20gallium: replace pipe_resource::_usage with pipe_resource::usageBrian Paul
2010-04-20Merge branch 'gallium-index-bias'José Fonseca
2010-04-19svga: Implement index bias.José Fonseca
Untested.
2010-04-19Merge branch '7.8'Brian Paul
Conflicts: src/gallium/auxiliary/draw/draw_context.c src/gallium/auxiliary/draw/draw_pipe_aaline.c src/gallium/drivers/llvmpipe/lp_context.c