Commit graph

32463 commits

Author SHA1 Message Date
Keith Whitwell
8cdfd1219a Merge commit 'origin/master' into gallium-sampler-view
This branch already seems to have the nv50_tex.c fix.

Conflicts:
	src/gallium/drivers/nv50/nv50_tex.c
2010-03-16 09:02:38 +00:00
Chia-I Wu
e0ce4a4a09 i965g: Fix use of an uninitialized variable. 2010-03-16 15:51:17 +08:00
Chia-I Wu
9d3a873f42 Merge remote branch 'origin/gallium-st-api' 2010-03-16 15:12:46 +08:00
Ben Skeggs
95d43bccde nv50: fix texturing from >=4GiB mark 2010-03-16 13:18:39 +10:00
Jakob Bornecrantz
b586774016 llvmpipe: Fix rebase typo 2010-03-16 01:17:33 +00:00
Jakob Bornecrantz
8b63f9b497 winsys/sw: Add a software winsys layered on a pipe 2010-03-16 01:06:46 +00:00
Jakob Bornecrantz
eaee22ac88 i965g: Fix after context transfers 2010-03-16 01:06:46 +00:00
Brian Paul
cb1b0b4bec gallivm: checkpoint: stencil test code 2010-03-15 18:19:04 -06:00
Brian Paul
185be3a87a gallivm/llvmpipe: rename some constant building functions 2010-03-15 18:16:56 -06:00
Brian Paul
c86a499769 gallivm: fix up some #includes 2010-03-15 18:16:56 -06:00
Brian Paul
0d71ba46e6 gallivm/llvmpipe: rename os_llvm.h to lp_bld.h
The llvm wrapper wasn't really an OS thing.

Use lp_bld.h for now but we eventually should rename/re-prefix all the
files/functions in the gallivm/ directory.
2010-03-15 18:16:56 -06:00
José Fonseca
3eb4b7bbec libgl-xlib: Obey GALLIUM_SOFTPIPE define. 2010-03-15 21:04:58 +00:00
Dave Airlie
8e848d682e gallium: fix frontbuffer rendering with r300g
No idea if this is the correct fix, but it makes it work again at least.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-03-16 06:51:04 +10:00
Brian Paul
d0b35352ed llvmpipe: updated status in README file 2010-03-15 11:46:41 -06:00
Brian Paul
aa3cdb712f progs/objviewer: remove debug code 2010-03-15 11:31:59 -06:00
Brian Paul
d25d3cc008 gallivm: fix typo/bug in lp_build_sgn()
We were never returning -1 as a result.  This fixes some inverted/flipped
faces with cube mapping.
2010-03-15 11:30:05 -06:00
Keith Whitwell
6420aca08b cso: Do not hold references to bound textures.
Sampler views already hold references to those.
2010-03-15 17:56:19 +01:00
Brian Paul
1d6d51413e gallivm: add min_lod==max_lod special-case code in lp_build_lod_selector()
When min_lod==max_lod we don't need to go through all the work of
computing the lod from partial derivatives.  This is hit by the mipmap
generation utility code.
2010-03-15 10:51:58 -06:00
Brian Paul
b9a81b626a gallivm: asst clean-ups, comments, etc. 2010-03-15 10:43:05 -06:00
Brian Paul
eecf9c85b0 gallivm: implement minification/magnification selection
Use the LOD value to determine whether to use the minification vs.
magnification filter.

All mipmap sampling modes work now.
2010-03-15 10:36:58 -06:00
Brian Paul
e0f7c3cbf0 gallivm: fix incorrect clamp in lp_build_linear_mip_levels() 2010-03-15 10:31:20 -06:00
Brian Paul
f9d753787e gallivm: fix incorrect floor(), itrunc()
LLVMBuildFPTrunc() should be used for double->float conversion, not
float->int conversion.

There should be a better way to compute floor(), ceil(), etc that doesn't
involve float->int->float conversion.
2010-03-15 10:29:10 -06:00
Michal Krol
3949388ca3 st/mesa: Fix a call to st_get_stobj_sampler_view(). 2010-03-15 15:04:12 +01:00
Michal Krol
6b60820fde st/mesa: Pass in correct sampler view object to blitter. 2010-03-15 15:03:44 +01:00
Michal Krol
df65fc8100 util: Fix nil pointer reference. 2010-03-15 14:42:44 +01:00
Luca Barbieri
50d96f741e nv40: remove leftover nv40_transfer.c from unification into nvfx 2010-03-15 08:47:03 -04:00
Michal Krol
f2bc089d14 gallium: util_blit_pixels() takes source sampler view as argument. 2010-03-15 13:22:40 +01:00
Michal Krol
dbf20a1f0f st/mesa: Cache FBO texture's sampler view object. 2010-03-15 13:22:40 +01:00
Chia-I Wu
a66d008104 st/mesa: Update the comments in st_manager.c. 2010-03-15 19:15:43 +08:00
Keith Whitwell
08189e6391 nvfx: fix up after merge 2010-03-15 10:27:25 +00:00
Keith Whitwell
506130fff5 r300g: fix up after merge 2010-03-15 10:24:55 +00:00
Keith Whitwell
42910ebe7b Merge commit 'origin/master' into gallium-sampler-view
Conflicts:
	src/gallium/drivers/nv30/nv30_context.h
	src/gallium/drivers/nv30/nv30_state.c
	src/gallium/drivers/nv40/nv40_context.h
	src/gallium/drivers/nv40/nv40_state.c
	src/gallium/drivers/r300/r300_emit.c
2010-03-15 09:44:52 +00:00
Dave Airlie
68e58a96e8 r300g: rebuild screen/winsys interface
This creates a cleaner winsys and drop the simple screen stuff.

It makes r300g use pb_bufmgr structs.

It also tries to avoid overheads from mapping too often.

v5: clean warnings

v6: break out of cache check on first buffer - since most likely
the first busy one implies all after it are busy.

v7: cleanup a bit

v8-merged: drop cman for now to just get all the interface changes in first.
rework to changes that happened upstream

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-03-15 18:36:47 +10:00
Ben Skeggs
a899c5a76e nv50: reset vbo_fifo before each validate 2010-03-15 16:53:46 +10:00
Luca Barbieri
9b3a908736 nvfx: remove src_native_swz, which was a no-op
src_native_swz was used to translate 0/1 swizzles back when Gallium
supported them.

That support was later removed from Gallium, and the function currently
always returns true.

Remove it.
2010-03-15 00:03:05 -04:00
Luca Barbieri
49f2a89956 nvfx: clean up shader header
Currently the behavior of shader.h depends on some constants that
are defined differently in vertex and fragment programs.

This patch cleans that up by splitting the relevant symbols in
vertex program and fragment program variants
2010-03-15 00:03:05 -04:00
Luca Barbieri
a174db480b nvfx: draw: make swtnl draw_elements actually work.
It was totally broken: the index buffer was passed as NULL!
2010-03-15 00:03:04 -04:00
Luca Barbieri
152dffd3e1 nvfx: draw: emit color as floating point
Don't lose precision by converting to u8.
2010-03-15 00:03:04 -04:00
Luca Barbieri
ac7ae8bc6a nvfx: draw: make perspective corrective texturing work
We must divide everything in the position by w, and emit position as
a 4-component vector.

Not sure why we must divide, but it works (see progs/redbook/checker).
2010-03-15 00:03:04 -04:00
Luca Barbieri
ad2d0c2639 nvfx: draw: create draw vp with ureg
This avoids duplicating the vertex program generation logic and
makes the same code work for both nv30 and nv40.
2010-03-15 00:03:04 -04:00
Luca Barbieri
d40a069206 nvfx: add NOUVEAU_SWTNL to force swtnl at runtime
Replace the FORCE_SWTNL macro with a NOUVEAU_SWTNL environment variable.
2010-03-15 00:03:04 -04:00
Luca Barbieri
dbe63ed3b6 nvfx: move nv04_surface_2d.c into nvfx directory
It is only used on pre-nv50 and nvfx is the only Gallium pre-nv50 driver.
2010-03-15 00:03:04 -04:00
Luca Barbieri
e1580ce4c9 nvfx: fix quads drawing
The primitive splitting code is totally broken and will be rewritten.

Fix the most important bug now though.
2010-03-15 00:03:04 -04:00
Luca Barbieri
0192a4a825 nvfx: fix viewport state after bypass removal for swtnl
The adjustment of nv30/nv40 after the removal of bypass incorrectly
removed the hardware viewport bypass code, which we still need for
swtnl and also forgot to remove NVFX_NEW_RAST from pipe.
2010-03-15 00:03:04 -04:00
Luca Barbieri
f9d09a2e78 nv30, nv40: move last files to nvfx/ and rm -rf nv30 nv40
This is the last nvfx unification patch.

nv[34]0_fragtex.c are moved to the common directory
nv[34]0_shader.h are renamed to nv[34]0_vertprog.h and moved to
the common directory

The separate nv30 and nv40 directories are removed from the build
system
2010-03-15 00:03:04 -04:00
Luca Barbieri
7d210fa05f nv30, nv40: partially non-trivially unify sampler state in nv[34]0_state.c
Many things, like texture wrap modes and min/mag filters are common.

Some others, like annisotropy and lod settings, are not.
2010-03-15 00:03:03 -04:00
Luca Barbieri
5bb68e5d17 nv30, nv40: partially non-trivially unify nv[34]0_fragtex.c
The bulk files cannot be unified, but the frontend can and allows to
share some code and simplify state_emit.c
2010-03-15 00:03:03 -04:00
Luca Barbieri
da5103c3b3 nv30, nv40: unify nv[34]0_context.c
They are now almost identical, except for nv30 vs nv40 fragtex
initialization.
2010-03-15 00:03:03 -04:00
Luca Barbieri
6992be5433 nv30, nv40: fully unify nv[34]0_context.h
Move the remaining content to the common header.
2010-03-15 00:03:03 -04:00
Luca Barbieri
10f464fc10 nv30, nv40: non-trivially unify nv[34]0_screen.c
The files have the same structure but are substantially different.

They are unified with appropriate conditionals.
2010-03-15 00:03:03 -04:00