Commit graph

23447 commits

Author SHA1 Message Date
Brian Paul
dc9705d12d i965: only upload constant buffer data when we actually need the const buffer
Make the use_const_buffer field per-program and only call the code which
updates the constant buffer's data if the flag is set.

This should undo the perf regression from 20f3497e4b
2009-04-27 09:51:46 -06:00
Keith Whitwell
5250eec652 util/time: add util_time_sleep() for windows userspace
Somebody with a clue could probably do a better implemenation...
2009-04-27 14:43:57 +01:00
Keith Whitwell
5ed7764fd6 mesa/st: fix incorrect face, level in compress_with_blit
We were incorrectly applying the destination texture face and level
when requesting a transfer to the temporary texture, which has only
one face and level.  This would obviously cause problems uploading to
compressed cube and mipmap textures.
2009-04-27 14:43:57 +01:00
Shuang He
e326600609 demos: Clean up allocated Textures and Display Lists when demo quit 2009-04-27 07:13:33 -06:00
Maciej Cencora
033d1365e6 r300: fix performance regression
This performance regression on non TCL hw was introduced by ed4c6cbe01.
This patch depends on "r300: always route 4 texcoord components to RS" and "r300: add point attenuation stage for TCL fallbacks".
2009-04-27 19:08:41 +10:00
Maciej Cencora
7f6b13be86 r300: add point attenuation stage for TCL fallbacks 2009-04-27 19:08:12 +10:00
Maciej Cencora
d014d7d1bb r300: always route 4 texcoord components to RS
Routing <4 components may lead to lock up.

Thanks to Alex Deucher for suggestion.
2009-04-27 19:07:50 +10:00
Maciej Cencora
22c0652c38 r300: flush stdout to get consistent debugging info 2009-04-27 19:07:16 +10:00
Maciej Cencora
7ff2dcbbdc r300: add atom print function for kernel mm path 2009-04-27 19:06:38 +10:00
Maciej Cencora
25dd867c58 r300: handle texcoords properly
add 1D texture case and setup default Q value to 1.0
2009-04-27 19:06:00 +10:00
Maciej Cencora
199710914a r300: remove unnecessary function calls
ae_create_context is called by vbo_CreateContext
ae_invalidate_state is called by vbo_InvalidateState
2009-04-27 19:05:37 +10:00
Maciej Cencora
607c6cf188 r300: rename state
According to r300_reg.h from radeon drm module 0x4f30 is ZB_ZMASK_OFFSET.
Also cleanup as trailing whitespaces.
2009-04-27 19:04:52 +10:00
Maciej Cencora
931c89f6f6 r300: remove unnecessary function calls
r300SetEarlyZState is called during r300UpdateShaderStates which is called for every rendering operation.
2009-04-27 19:04:21 +10:00
Brian Paul
b58b3a786a i965: rework GLSL/WM register allocation
Use a bitvector of used/free flags.

If we run out of temps, examine the live intervals of the temp regs in
the program and free those which are no longer alive.

Also, enable the new WM const buffer code.
2009-04-24 16:33:46 -06:00
Brian Paul
7da3f9403b mesa: refactor code and make _mesa_find_temp_intervals() public 2009-04-24 16:28:36 -06:00
Micah Dowty
b618827fac util: Add debug_printf_once 2009-04-24 23:59:21 +02:00
José Fonseca
99b77d05d2 mesa: Call _mesa_snprintf instead of snprintf.
snprintf not directly available on Windows.
2009-04-27 13:09:58 +01:00
José Fonseca
b504721cc7 stw: Use a statically initiallized gl proc table.
It doesn't change anyway.
2009-04-27 12:53:54 +01:00
Maciej Cencora
4486e40143 r300: always emit output insts after all KIL insts 2009-04-27 19:02:39 +10:00
Corbin Simpson
904b563fd0 r300-gallium: Correctly flush Draw.
Should help with a few non-TCL bugs.
2009-04-26 10:06:02 -07:00
Mathias Gottschlag
86d2144412 r300-gallium: Add a draw_flush() to r300_flush().
This fixes some missing primitives which had been drawn right before the next glClear().
2009-04-26 10:01:17 -07:00
Corbin Simpson
233c6fb694 r300-gallium: Fix vertex shader OVM counting.
Attribs must be packed: position, point size, colors, texcoords.

Thanks to osiris for pointing it out.
2009-04-25 16:54:47 -07:00
Corbin Simpson
f45a7a1d1f r300-gallium: Clean up FB state emit. 2009-04-25 16:54:47 -07:00
Mathias Gottschlag
d9f2d0752b r300-gallium: Set framebuffer pitch on every framebuffer change.
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2009-04-25 16:54:47 -07:00
Jakob Bornecrantz
a098e60903 gallium-intel: Fix warning 2009-04-25 12:56:52 +01:00
Jakob Bornecrantz
5f701f22f0 gallium-intel: Cache software switch 2009-04-25 12:56:52 +01:00
Jakob Bornecrantz
f44f1155a9 gallium-intel: Link dri2 driver with softpipe 2009-04-25 12:56:52 +01:00
Samuel Thibault
d18dd6ad11 GNU/Hurd fixes
Here is a couple of fixes for GNU/Hurd:
- dri_interface.h: no libdrm support either.
- configure.ac:
 - GNU/Hurd is a GNU OS with _GNU_SOURCE and PTHREADS.
 - GNU needs a couple of flags like other OSes

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-04-24 19:10:01 -07:00
Ian Romanick
022319b92c intel: Fix more issues with the combined depth-stencil attachment 2009-04-24 16:39:00 -07:00
Ian Romanick
302ba83116 intel: Initialize region ptr to prevent assertion in intel_region_reference 2009-04-24 16:30:13 -07:00
Brian Paul
91eb8baaca tgis: SSE code generator doesn't yet support indirect addressing of temp regs
Fall back to interpreter in this case.
2009-04-24 17:18:02 -06:00
Ian Romanick
f2272b5b2f intel / DRI2: When available, use DRI2GetBuffersWithFormat
This interface gives the driver two important features.  First, it can
allocate the (fake) front-buffer only when needed.  Second, it can
tell the buffer allocator the format of buffers being allocated.  This
enables support for back-buffer and depth-buffer with different bits
per pixel.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kristian Høgsberg <krh@redhat.com>
2009-04-24 12:48:20 -07:00
Ian Romanick
dbf87f2312 DRI2: Implement interface for drivers to access DRI2GetBuffersWithFormat
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kristian Høgsberg <krh@redhat.com>
2009-04-24 12:48:20 -07:00
Ian Romanick
d8d7b2c395 DRI2: Implement protocol for DRI2GetBuffersWithFormat
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kristian Høgsberg <krh@redhat.com>
2009-04-24 12:48:20 -07:00
Jerome Glisse
32d185eb60 r300: fix cliprect values 2009-04-24 19:54:01 +02:00
Brian Paul
1c9786894c mesa: fix up error/warning/debug output newlines
As of commit 23ad86cfb9 all messages go
through output_if_debug().

Add new parameter to output_if_debug() to indicate whether to emit a newline.

_mesa_warning() and _mesa_error() calls should not end their strings with \n.
_mesa_debug() calls should end their text with \n.
2009-04-24 10:50:40 -06:00
Brian Paul
3321b6984e i965: use drm_intel_gem_bo_map/unmap_gtt() when possible, otherwise dri_bo_subdata()
This wraps up the unfinished business from commit a9a363f829
2009-04-24 09:52:05 -06:00
Alan Hourihane
b2a69ae879 demos: ensure display lists are destroyed for next generation 2009-04-24 16:45:36 +01:00
Brian Paul
027ed1b505 mesa: signal _NEW_PROGRAM_CONSTANTS instead of _NEW_PROGRAM
Use _NEW_PROGRAM_CONSTANTS when changing constant/uniform buffer values.
Binding a new program/shader sets both _NEW_PROGRAM and _NEW_PROGRAM_CONSTANTS.
2009-04-24 09:43:44 -06:00
Jerome Glisse
5dec94696e r300: emit cliprect when in dri2 mode 2009-04-24 15:03:23 +02:00
Keith Whitwell
29d9abf72d pipebuffer: don't fail when validating mapped buffers
This can be almost impossible to avoid - hopefully we won't encounter
a situation where this is a true requirement.  Would probably require
drivers to flush between hardware and software vertex processing.
2009-04-24 12:43:04 +01:00
Keith Whitwell
a86ef37655 shadowtex: fflush stdout for cygwin 2009-04-24 12:16:39 +01:00
Jakob Bornecrantz
f4a286e5f5 util: Add more entry points for dumping to bmp 2009-04-24 13:02:26 +02:00
Keith Whitwell
eb5d96968f demos/readpix: add option to draw triangle instead of drawpix 2009-04-24 10:09:14 +01:00
Keith Whitwell
510a44eea7 tests/mipmap_view: add a bunch of keystrokes for testing render-to-texture
Move between mipmaps, render a triangle, reload textures with either
the original arch (and GenMipmaps) or via straightforward glTexImage.
2009-04-24 10:09:14 +01:00
Roland Scheidegger
ff71587b27 i965: fix point size issue
need to clamp point size to user set min/max values, even for constant
point size. Fixes glean pointAtten test.
2009-04-24 02:40:05 +02:00
Brian Paul
1d00399593 mesa: more informative error messages 2009-04-23 17:54:34 -06:00
Brian Paul
a9a363f829 i965: revert part of commit 4f4907d69f
The drm_intel_gem_bo_map_gtt() call that replaced dri_bo_map() is
producing errors like:

intel_bufmgr_gem.c:689: Error preparing buffer map 39 (vp_const_buffer): Invalid argument .

and returning NULL, causing a segfault in the memcpy().

Just reverting until we can get to the root issue...
2009-04-23 17:41:23 -06:00
Roland Scheidegger
ae69a04650 i915: fix fix for anisotropic filtering
forgot to commit the changes to actually support 4x aniso filtering...
2009-04-23 23:10:51 +02:00
Eric Anholt
8374379572 i965: Support drawing to FBO cube faces other than positive X.
Also fixes drawing to 3D texture depth levels.
2009-04-23 11:13:04 -07:00