Commit Graph

13721 Commits

Author SHA1 Message Date
Michal Krol f23207ca57 tgsi: Use debug_printf(). 2008-03-14 21:44:06 +01:00
Michal Krol 2b8f31a6da scons: Remove second occurence of draw_passthrough.c. 2008-03-14 21:40:32 +01:00
Brian Paul a9aef5fccd mesa: init tmpNode to zeros 2008-03-14 14:14:13 -06:00
Brian Paul 7dc449d406 mesa: fix emit_clamp() so that we don't use an output register as temporary
IR_CLAMP is decomposed into OPCODE_MIN+OPCODE_MAX.  Allocate a temporary
register for the intermediate value so we don't inadvertantly use an output
register (which are write-only on some GPUs).
2008-03-14 13:50:01 -06:00
Brian Paul 14150bc856 mesa: call glColorMask(1,1,1,1) before glClear()
Without this, second and subsequent redraws rendered incorrectly.
Plus comments.
2008-03-14 11:35:57 -06:00
Brian Paul 9de9e1fe8c gallium: print warning rather than assert(0) for LOG/EXP opcodes
Glean vertProg1 runs all the way through, rather than aborting.
2008-03-14 11:24:28 -06:00
Brian 3088eb5949 gallium: added some debug code (disabled) 2008-03-14 10:23:56 -06:00
Brian 027433176c i915: check for NULL const buffer ptr 2008-03-14 10:23:56 -06:00
Brian a254d0c368 gallium: added dummy install target 2008-03-14 10:23:56 -06:00
Brian c45a525cdc mesa: revert fast-track glColor and similar calls when not immediate mode rendering
Revert commit d08cd68d3f

This change caused some glean tests to fail.  The alpha value of colors was
always 1.0 instead of the value from glColor4fv().  The mesa color array
found in st_draw() has size=3 instead of size=4.
2008-03-14 10:23:56 -06:00
Brian ee55eaa609 gallium: in st_program_string_notify() free shader tokens.
When the shader instructions change, free the TGSI tokens.  This signals the
state tracker to recompile the shader.  Fixes a regression caused by recent
shader/state-tracker changes.
2008-03-14 10:23:56 -06:00
Keith Whitwell e4cdce43ce gallium: fix some compiler warnings 2008-03-14 08:42:45 +00:00
Keith Whitwell d34bc880a4 tgsi: add debug_printf version of tgsi_dump 2008-03-14 08:42:08 +00:00
Brian 78302c7ca3 gallium: need to all draw_flush() in softpipe_unmap_constant_buffers()
Otherwise, we won't have our constants when we run the fragment shader.
Fixes crash in glsl tests when SP_VBUF=1.
2008-03-13 18:19:47 -06:00
Brian 34be396950 gallium: fix EMIT_HEADER case in draw_vf_set_vertex_info() 2008-03-13 17:39:30 -06:00
Brian d088d640fc gallium: plug in vertex passthrough code
Based on a patch from Zack.
Basically, implement a new draw_arrays function that copies the incoming
user-vertices to the hardware vertex buffer, doing format/type conversion
as needed.
The vertex fetch/store code is totally temporary for now.
2008-03-13 17:10:28 -06:00
Brian 5bae5871f0 gallium: for TEST_DRAW_PASSTHROUGH, pass inClipCoords=FALSE to st_draw_vertices()
When pass-through mode is fully supported we'll clean this up more.
2008-03-13 17:06:13 -06:00
Brian ce49c4c24b gallium: fix bug in draw_num_vs_outputs() 2008-03-13 17:04:56 -06:00
Brian cf106789ab gallium: added EMIT_HEADER case 2008-03-13 17:04:04 -06:00
Brian 269fbeb545 gallium: in softpipe_get_vertex_info() generate a vbuf vertex_info with real attribs
Can't use the EMIT_ALL shortcut/optimization anymore because of passthrough mode.
2008-03-13 16:57:57 -06:00
Brian 13334c8dd2 gallium: added EMIT_HEADER case in emit_vertex() 2008-03-13 16:57:37 -06:00
Brian b9518a4e39 gallium: added new EMIT_HEADER token
Used to emit the struct vertex_header info for softpipe.
Before we were using the EMIT_ALL token but that's insufficient for the
draw pass-through mode.  EMIT_ALL might get removed soon...
2008-03-13 16:55:48 -06:00
Brian 7d5e38a55a gallium: plug in new sp_vbuf_draw_arrays() function
Will be used for pass-through mode.
Also, call draw_set_render() to register the vbuf stage.  Should probably
rename that function to something like draw_set_vbuf_stage().
2008-03-13 16:53:44 -06:00
Brian 3e625ce18e gallium: add some temporary code for testing draw module vertex passthrough
Set TEST_DRAW_PASSTHROUGH=1, run progs/trivial/clear-scissor
2008-03-13 15:08:18 -06:00
Brian 69c39b9ae2 gallium: set surface status to CLEAR or DEFINED in clearing/drawing code.
Otherwise, we were never setting these flags.  This confused the state tracker.
Fixes progs/demos/texenv.c, probably others.
2008-03-13 15:08:18 -06:00
Zack Rusin a889928d85 add a way of removing an exact iterator from the hash 2008-03-13 16:41:37 -04:00
Brian 3faf6230ff gallium: added draw_need_pipeline() predicate function
To test if we need any pipeline stage, or whether we can go into passthrough mode.
2008-03-13 14:34:35 -06:00
Brian 8b8c9acdb7 gallium: added draw_enable_line_stipple() function
Allows drivers that implement line stipple to turn off this drawing stage.
2008-03-13 14:33:57 -06:00
Brian b6ed165748 gallium: added bypass_vs flag to rasterizer state (may be temporary) 2008-03-13 14:32:20 -06:00
Ian Romanick 3115e8c968 cell: Fix to work with commit fa9e7e9a8d 2008-03-13 13:10:16 -07:00
Brian Paul b12a28db96 gallium: remove dead code related to shader semantic input/output info 2008-03-13 14:05:30 -06:00
Brian Paul 7ffbaebce1 gallium: fix bug in stip_first_tri()
Need to compute num_samplers after binding/creating the fragment shader.
2008-03-13 13:22:51 -06:00
Brian Paul cb294542bc gallium: remove a debug printf 2008-03-13 13:22:51 -06:00
Ian Romanick 6472138045 Replicate TXP changes in the SPU version of TGSI exec
Replicate changes from commit ba75e82b6e
in spu_exec.c
2008-03-13 11:21:14 -07:00
Brian Paul fa9e7e9a8d gallium: remove semantic info from pipe_shader_state
Brian's patch to clean up the shader interfaces.
2008-03-13 18:10:26 +00:00
Keith Whitwell b0d5519b44 gallium: make the windows config function more readable with 80-ish columns 2008-03-13 18:10:26 +00:00
Michal Krol bcb454e7a6 tgsi: Drop pre-ps_2_0 opcodes. 2008-03-13 18:12:36 +01:00
Michal Krol 78ddfbd130 tgsi: Remove OPCODE_TEXCOORD, OPCODE_TEXCRD aliases. 2008-03-13 13:00:44 +01:00
José Fonseca 42f2868416 gallium: General purpose hash table, which is actually just a convenient frontend to cso_hash. 2008-03-13 10:23:02 +00:00
José Fonseca 734ccee565 gallium: Standardize most important error codes. 2008-03-13 10:23:02 +00:00
José Fonseca e584eb888f gallium: Add a bit of documentation to cso_hash. 2008-03-13 10:23:02 +00:00
José Fonseca 8506e41dc0 gallium: Fix debug_mask_vprintf's example. 2008-03-13 10:23:02 +00:00
José Fonseca 192d1cbbdf gallium: Add a new handle_table_set that accepts an arbitrary handle. 2008-03-13 10:23:02 +00:00
Keith Whitwell 92523ad0fd mesa: fix (harmless?) assignment in assert 2008-03-13 10:14:21 +00:00
Keith Whitwell ddb4e5cbac tgsi: replace erroneous use of FETCH with emit_tempf 2008-03-13 10:02:38 +00:00
Keith Whitwell 5ba2f0a507 tgsi: bump MAX_SRC_REGS to 4, for TXD 2008-03-13 10:02:38 +00:00
Zack Rusin cac037d36d add code handling dependencies between generated code 2008-03-12 22:57:52 -04:00
Zack Rusin 2366bb1baf Add some basic documentation for gallivm code 2008-03-12 22:06:51 -04:00
Zack Rusin a1d5672865 document hash collision resolutions 2008-03-12 21:49:06 -04:00
Brian 329c543134 gallium: fix polygon stipple
Was broken by commit 4528287e04 (bind all
samplers/texures at once).
2008-03-12 19:29:30 -06:00