Commit graph

31758 commits

Author SHA1 Message Date
Corbin Simpson
8a2c961798 r300g: Atomize ZTOP.
Also do state-change checks. ZTOP's too important to not check.
2010-01-10 11:49:25 -08:00
Corbin Simpson
07ea7e6c80 r300g: Atomize DSA.
Also a bit of ztop.
2010-01-10 11:17:34 -08:00
Corbin Simpson
249374b853 r300g: Atomize UCP.
Meh.
2010-01-10 11:17:34 -08:00
Corbin Simpson
9d3db601c7 r300g: Atomize blend color. 2010-01-10 11:17:34 -08:00
Corbin Simpson
d496399156 r300g: Start using atoms.
No benefits yet.
2010-01-10 11:17:34 -08:00
José Fonseca
12576556e4 llvmpipe: Update instructions.
Explain how to build for windows. Both MSVC 9 and cross MinGW supported.

Stop documenting LLVM 2.5 as supported. It still supported at the moment
but it will soon stop being.
2010-01-10 18:37:42 +00:00
Keith Whitwell
c1a0441602 llvmpipe: initial mrt support
Non-mrt apps work, and the code looks correct, but not many mrt test apps
handy atm...
2010-01-10 17:22:09 +00:00
Chia-I Wu
d4c1ee0534 egl: Clean up the Makefile rules.
This allows libEGL to be built as a static library and removes libX11
from the dependencies.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2010-01-11 01:11:05 +08:00
Chia-I Wu
064242ae9f egl_softpipe: Remove the unnecessary call to _eglSwapBuffers.
The call to _eglSwapBuffers is unnecessary, and the function is missing
when -fvisibility=hidden.  Also remove the extraneous braces and indent
the block.
2010-01-11 01:06:47 +08:00
José Fonseca
cdc11056de llvmpipe: Yet another hack to get release LLVM static libraries to link in debug builds. 2010-01-10 11:20:11 +00:00
José Fonseca
a921458c16 scons: LLVM <-> MSVC integration tweaks. 2010-01-10 10:51:42 +00:00
José Fonseca
74f520861f gallium: Remove dead code. 2010-01-10 10:44:25 +00:00
José Fonseca
dc6bcc92ee gallium: Provide alternative stdint.h and stdbool.h C99 headers, instead of ad-hoc definitions.
Everybody is using the C99's integer types. Everybody except Microsoft,
which in turns means everybody is including their own definitions of C99
integer types for MSVC, causing duplicate definitions when linking two
projects. This is the case of building Gallium and LLVM with MSVC.

Shipping alternative stdint.h and stdbool.h headers for MSVC allows us
to share a single definition. It also removes clutter from the Gallium
headers.
2010-01-10 10:39:29 +00:00
Maciej Cencora
0b7b76fb16 r300: minor accelerated blit fixes 2010-01-09 19:53:17 +01:00
Maciej Cencora
cf1748053a r300: fallback on depth buffer blits
Depth buffer accelerated blits aren't implemented yet.
2010-01-09 19:52:42 +01:00
Brian Paul
f4321fbd96 llvmpipe: optimize case when all four pixels are inside the triangle
When the incoming c0,c1,c2 values are equal to INT_MIN it means that
all pixels are inside the triangle.  Thus we can skip the detailed
pixel inside/outside triangle tests.  Use the new lp_build_if()/endif()
functions to generate the branching code.

The code is disabled ATM however because it's actually a little slower
than the original code.  A little more tuning may fix that though...
2010-01-08 14:49:34 -07:00
Brian Paul
5208af7853 llvmpipe: fix more if/else/endif design bugs 2010-01-08 12:47:30 -07:00
Brian Paul
855d7f51e4 llvmpipe: move some fields to the private lp_build_flow_if struct 2010-01-08 11:32:36 -07:00
Brian Paul
af31e65b55 llvmpipe: free the phi array 2010-01-08 11:20:38 -07:00
Brian Paul
70b8d59792 llvmpipe: checkpoint if/else/endif contructs work
The LLVM IR looks correct now.  Basic blocks are where they're supposed
to be and the Phi functions have the right (var,block) information.
2010-01-08 11:06:16 -07:00
Kristian Høgsberg
7c50d29f7c intel/DRI2: add DRI2flushExtension support with invalidate hook
Needed to support the SwapBuffers code properly.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
2010-01-08 12:40:58 -05:00
Jesse Barnes
c642f3941b xdemos/glsync: handle no sync method better
Print out count, finish rendering, etc.  Makes the -sn option more useful.
2010-01-08 12:37:44 -05:00
Jesse Barnes
0269dc19b5 xdemos/glsync: check glXMakeCurrent return value
Since this program is used for testing, catching this case can be helpful.
2010-01-08 12:37:43 -05:00
Jesse Barnes
f860aac0d8 xdemos/glsync: Make glsync test draw a rectangle
Doing simple buffer clears isn't enough to actually allocate render buffers, we
need to do real drawing.
2010-01-08 12:37:43 -05:00
Jesse Barnes
f35f666f81 xdemos/glsync: Add swap interval support to glsync test 2010-01-08 12:37:43 -05:00
Jesse Barnes
7f170573ea DRI2/GLX: add INTEL_swap_event support
Add event support for the GLX swap buffers event, along with DRI2 protocol
support for generating GLX swap buffers events in the direct rendered case.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-01-08 12:37:43 -05:00
Jesse Barnes
efc82e7c70 DRI2: add SwapInterval support
Add support for the DRI2SwapInterval protocol request.  This allows
direct rendered clients to control their swap interval per the
SGI_swap_control extension.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-01-08 12:33:32 -05:00
Jesse Barnes
daf7fe69f7 DRI2: add OML_sync_control support
Add OML_sync_control support, along with a simple program for testing
it.  This means adding support for the DRI2GetMSC, DRI2WaitMSC and
DRI2WaitSBC requests.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-01-08 12:31:10 -05:00
Jesse Barnes
a35f6bb207 DRI2: add SwapBuffers support
Support the new DRI2 protocol request, DRI2SwapBuffers, in both direct
and indirect rendering context.  This request allows the display server
to optimize back->front swaps (e.g. through page flipping) and allows us
to more easily support other GLX features like swap interval and the OML
sync extension in DRI2.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-01-08 12:29:50 -05:00
Christoph Bumiller
99637ba80e nv50: handle TGSI_OPCODE_UMAD,UMUL,NOT and fix SAD 2010-01-08 18:23:12 +01:00
Christoph Bumiller
222738fcf5 nv50: free src temp_temps on emit 2010-01-08 18:23:08 +01:00
Christoph Bumiller
a5f771d758 nv50: try to honor sprite coord mode 2010-01-08 18:23:04 +01:00
José Fonseca
080c40ab32 Merge remote branch 'origin/master' into lp-binning
Conflicts:
	src/gallium/auxiliary/util/u_surface.c
	src/gallium/drivers/llvmpipe/Makefile
	src/gallium/drivers/llvmpipe/SConscript
	src/gallium/drivers/llvmpipe/lp_bld_arit.c
	src/gallium/drivers/llvmpipe/lp_bld_flow.c
	src/gallium/drivers/llvmpipe/lp_bld_interp.c
	src/gallium/drivers/llvmpipe/lp_clear.c
	src/gallium/drivers/llvmpipe/lp_context.c
	src/gallium/drivers/llvmpipe/lp_context.h
	src/gallium/drivers/llvmpipe/lp_draw_arrays.c
	src/gallium/drivers/llvmpipe/lp_jit.c
	src/gallium/drivers/llvmpipe/lp_jit.h
	src/gallium/drivers/llvmpipe/lp_prim_vbuf.c
	src/gallium/drivers/llvmpipe/lp_setup.c
	src/gallium/drivers/llvmpipe/lp_setup_point.c
	src/gallium/drivers/llvmpipe/lp_state.h
	src/gallium/drivers/llvmpipe/lp_state_blend.c
	src/gallium/drivers/llvmpipe/lp_state_derived.c
	src/gallium/drivers/llvmpipe/lp_state_fs.c
	src/gallium/drivers/llvmpipe/lp_state_sampler.c
	src/gallium/drivers/llvmpipe/lp_state_surface.c
	src/gallium/drivers/llvmpipe/lp_tex_cache.c
	src/gallium/drivers/llvmpipe/lp_tex_cache.h
	src/gallium/drivers/llvmpipe/lp_tex_sample.h
	src/gallium/drivers/llvmpipe/lp_tile_cache.c
2010-01-08 15:42:57 +00:00
Brian Paul
fd70841121 Merge branch 'mesa_7_7_branch'
Conflicts:

	src/mesa/drivers/dri/i965/brw_wm_emit.c
2010-01-08 08:21:12 -07:00
José Fonseca
9cdf6f025b scons: Set the default windows platform to be windows userspace.
I thought I had done this ages ago.
2010-01-08 14:31:25 +00:00
Dan Nicholson
674c76310f mesa: Ensure libmesagallium.a is finished building before descending
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2010-01-08 06:09:19 -08:00
Dan Nicholson
a1de400e8d mklib: Extract archives into temporary directories
When static libraries are created from other archives, objects are
extracted and then deleted when the static library is done. This can
race when there are multiple static libraries being created from the
same archives as with libmesa.a and libmesagallium.a.

Should fix this issue with parallel jobs:

make[5]: *** No rule to make target
> `../../../../../../src/mesa/libmesagallium.a', needed by
> `radeon_dri.so'. Stop

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reported-and-Tested-by: Sedat Dilek <sedat.dilek@gmail.com>
2010-01-08 06:01:22 -08:00
Michal Krol
dddd5a36ac tgsi: Cleanup dot-product opcodes in interpreter. 2010-01-08 12:03:55 +01:00
Vinson Lee
3c42e403de r300: Move initial declaration outside for loop. 2010-01-08 01:13:46 -08:00
Francisco Jerez
95f603a5f3 nv20: Fix build for the latest nouveau_class.h changes. 2010-01-08 04:42:28 +01:00
José Fonseca
d699b6720c scons: Don't build xlib when dri is enabled.
Hopefully adddresses fdo 25828.
2010-01-08 01:25:27 +00:00
José Fonseca
ba33ef0011 lvmpipe: Initialize all coordinates.
Fixes assertion failure with fp-incomplete-tex (fdo 24298).
2010-01-08 01:15:17 +00:00
José Fonseca
c6509f89b4 scons: Output a meaningful message when xlib libGL.so can't be built. 2010-01-08 00:50:09 +00:00
José Fonseca
de22c940a1 scons: Use static glew library on Unices to avoid binary compatability issues
Fixes bug 25926.
2010-01-08 00:33:58 +00:00
Keith Whitwell
45fe1d7d00 st/xorg: remove unused xorg_exa_get_pixmap_handle function 2010-01-07 22:08:23 +00:00
Brian Paul
5dd9e23d62 docs: document Gallium SSE codegen for XPD bug fix 2010-01-07 14:55:27 -07:00
Brian Paul
8647aa1d8d tgsi: fix SSE code emit for XPD
Rearrange things so that the writes to the dest registers happen
after we've fetched/used all src registers.

The problematic instruction was:  XPD TEMP[2].xyz, TEMP[0], TEMP[2];
Note that the dst reg is also a src reg.

This fixes bad shading with progs/glsl/bump.c since Eric's changes to the
Mesa program optimizer in commit d6690ce15f.
The optimizer rearranges some registers so we occasionally wind up with
something like the above.
2010-01-07 14:49:14 -07:00
Christoph Bumiller
7fc5fcada5 nv50: preallocate TEMPs written first time in a subroutine
Otherwise we risk overwriting them with temporary GPRs if
they're not used immediately after the CALL.
2010-01-07 21:19:58 +01:00
Christoph Bumiller
a009fa4305 nv50: handle TGSI_OPCODE_SAD,UADD 2010-01-07 21:19:58 +01:00
Christoph Bumiller
d550de2342 nv50: handle TGSI_OPCODE_IMAX,IMIN,UMAX,UMIN 2010-01-07 21:19:58 +01:00