Commit graph

14368 commits

Author SHA1 Message Date
Brian
0dd79011b9 gallium: pass NULL to cso_single_sampler() when the sampler isn't used.
This fixes an AA line crash/regression.
The aaline stage needs to find a free/unused sampler to do its thing.
2008-03-12 14:20:54 -06:00
Brian
51809bc1bc remove reference to obsolete ExtDivide 2008-03-12 13:22:58 -06:00
Brian
a2b917c1cd gallium: use TXP rather than ExtDivide flag 2008-03-12 13:21:41 -06:00
Brian
12ab5f9701 gallium: change draw_vertex_shader->state from pointer to struct
We were sometimes keeping a pointer to a stack-allocated object.
Now make a copy of the pipe_shader_state object.
This should fix some seemingly random memory errors/crashes.
2008-03-12 13:20:29 -06:00
Michal Krol
ba75e82b6e tgsi: Remove ExtDivide field from existence. Implement OPCODE_TXP. 2008-03-12 16:41:25 +01:00
Michal Krol
e5b1a53c9f tgsi: Dump TXP opcode. 2008-03-12 16:26:08 +01:00
José Fonseca
8901a46a74 gallium: Generic handle table. 2008-03-12 15:02:50 +00:00
José Fonseca
a2ea51ed82 gallium: Change assert behavior on runtime (Mark Mueller). 2008-03-12 15:02:50 +00:00
Michal Krol
70ae7f09c7 tgsi: Introduce OPCODE_TXP. Depricate ExdDivide field. 2008-03-12 14:55:18 +01:00
José Fonseca
4f17bd270e scons: Faithfully mimic every WINDDK builtin compiler/linker option. 2008-03-12 13:34:30 +00:00
Keith Whitwell
8fd633b5cf gallium: reduce signed/unsigned warnings 2008-03-12 10:43:53 +00:00
Keith Whitwell
98ae83d5cc gallium: Add TEX_FILTER_ANISO img filter
Hardware almost universally expects us to set a special filtering mode
when anisotropic filtering is enabled, as opposed to varying a max-aniso
values.  Do this once in the state tracker & simplify the driver code.
2008-03-12 10:42:49 +00:00
Michal Krol
feb02084a8 tgsi: Dump source register divide component. 2008-03-12 11:37:12 +01:00
Brian
221adbd601 cell: check for NULL shader pointer in cell_bind_vs_state() 2008-03-11 20:03:37 -06:00
Brian
7aa34eb40c gallium: dummy install target 2008-03-11 19:02:51 -06:00
Brian
339e7ec680 gallium: rework CSO-related code in state tracker
Use the code in cso_context.c rather than st_cache.c.
Basically, binding of state objects now goes through the CSO module.
But Vertex/fragment shaders go through pipe->bind_fs/vs_state() since they're
not cached by the CSO module at this time.

Also, update softpipe driver to handle NULL state objects in various places.
This happens during context destruction.  May need to update other drivers...
2008-03-11 18:55:58 -06:00
José Fonseca
21ff003061 gallium: Silence MSVC warnings. 2008-03-12 00:27:52 +00:00
José Fonseca
45c5989511 gallium: Conditional debugging output.
Generalize the conditional debugging output code found trhought the gallium
drivers.
2008-03-12 00:27:52 +00:00
Michal Krol
130b315454 tgsi: Map OPCODE_TEXKILL to OPCODE_KILP. 2008-03-11 23:22:34 +01:00
Brian
34a0ac7f2b gallium: fix some cso_state_callback cast warnings 2008-03-11 15:01:52 -06:00
Brian
30fab81de8 gallium: fix fs/vs typo in cso_set_vertex_shader() 2008-03-11 14:31:17 -06:00
Keith Whitwell
5038c20795 draw: don't free our copy of the render stage -- just borrowing it from vbuf stage 2008-03-11 14:23:08 +00:00
Keith Whitwell
ff3c7a3243 gallium: missing file 2008-03-11 08:43:18 +00:00
Zack Rusin
be9a245738 fix double deletion
plus, if the current hash is bigger than max size make sure
we delete enough from it
2008-03-10 22:12:32 -04:00
Zack Rusin
d9d2ca7a07 fix compilation 2008-03-10 22:12:32 -04:00
Brian
c813b545ab fix Height2/Depth2 init problem when using texture borders 2008-03-10 18:08:14 -06:00
Brian
7585b4ceb8 gallium: disable an unneeded assertion (hit with texwrap.c) 2008-03-10 18:08:14 -06:00
Ian Romanick
b1525662b3 Move SPE register allocator to rtasm code
Move the register allocator to a common location.  There is more code
on the way that will make use of this interface.
2008-03-10 17:00:44 -07:00
Keith Whitwell
297b3be25a draw: placeholder/prototype code for a passthrough draw path 2008-03-10 23:31:50 +00:00
Keith Whitwell
d08cd68d3f mesa: fast-track glColor and similar calls when not immediate mode rendering
Often these are mixed in with draw arrays calls, etc.  Try not to get
the whole immediate rendering state machine going when we receive one
of these on their own.
2008-03-10 23:31:50 +00:00
Keith Whitwell
7375369fb3 gallium: fix compiler warning 2008-03-10 23:31:50 +00:00
Keith Whitwell
3f5b9f4ba4 gallium: use the same bypass_clipping logic on all vs paths 2008-03-10 23:31:50 +00:00
Keith Whitwell
6d5ee6d9a4 gallium: enable bug workaround in draw_vertex_cache_invalidate 2008-03-10 23:31:50 +00:00
Brian
d5692cb349 gallium: new surface/context tracker (sct) module
Will be used for tracking the surfaces and textures which are bound/used by
contexts.
2008-03-10 17:22:18 -06:00
Brian
5b82d551b7 cell: sync up with sampler/texture state-setting changes 2008-03-10 16:43:36 -06:00
José Fonseca
3102268154 gallium: Use hardcoded breakpoints on x86 targets. 2008-03-10 21:18:00 +00:00
José Fonseca
34497eabc8 Some notes about debugging 2008-03-10 21:15:31 +00:00
José Fonseca
01bd21eef8 gallium: Import Dennis Smit cpu detection code.
It still needs a slight code massasing to integrate with the rest of
gallium (namely mapping the OS_* ARCH_* defines), but I'm commiting anyway
so that it is available to be used when somebody needs it.
2008-03-10 16:45:19 +00:00
José Fonseca
b721bc8792 gallium: WinCE portability fixes. 2008-03-10 14:00:13 +00:00
Keith Whitwell
b041dbe901 gallium: avoid deleting currently-bound CSO's on cache destruction 2008-03-09 20:23:05 +00:00
Keith Whitwell
aff4cf19a7 draw: cope with binding NULL vertex shader (on context delete, for instance) 2008-03-09 20:23:05 +00:00
Keith Whitwell
d8d6569e28 cso: fix line endings 2008-03-09 20:23:04 +00:00
Keith Whitwell
ac87bc1835 cso: Use MALLOC 2008-03-09 20:23:04 +00:00
Keith Whitwell
5d802d8c84 cso: add a higher-level interface which does all pipe interactions to set a given state 2008-03-09 20:23:04 +00:00
Keith Whitwell
99691f38c2 gallium: add some commonly implemented bits of hw state 2008-03-09 20:23:03 +00:00
José Fonseca
5d1fc69041 scons: Ensure the paths to the WINDDK's executables are found before the MSVC ones. 2008-03-09 20:14:31 +00:00
José Fonseca
fc96aec9b7 gallium: Document debug_printf usage. 2008-03-08 17:36:19 +00:00
Michal Krol
8143adafdd gallium: Surround externs with extern "C". 2008-03-06 19:57:41 +01:00
Keith Whitwell
4528287e04 gallium: michel's patch to rework texture/sampler binding interface
Bind all the samplers/textures at once rather than piecemeal.
This is easier for drivers to understand.
2008-03-05 10:56:49 +01:00
José Fonseca
b1922de9f3 gallium: Use custom vsnprintf in WINDDK.
EngDebugPrint does not handle float point arguments, so we need to use
our own vsnprintf implementation.
2008-03-05 11:39:11 +01:00