Corbin Simpson [Sun, 2 Aug 2009 23:56:52 +0000 (16:56 -0700)]
Merge commit 'nha/r300-compiler-gallium'
Alex Deucher [Sun, 2 Aug 2009 22:26:12 +0000 (18:26 -0400)]
r600: handle state emit better
- move shader-related state with the rest of the shader setup/emit
- start to track dirty state better
vehemens [Sun, 2 Aug 2009 22:03:58 +0000 (18:03 -0400)]
r600: Logic Operations Fix
fixes bug 23087
Alex Deucher [Sun, 2 Aug 2009 17:28:18 +0000 (13:28 -0400)]
r600: fix regression in texenv
Emit shader consts with the shader program itself
Nicolai Hähnle [Sun, 2 Aug 2009 12:38:44 +0000 (14:38 +0200)]
r300: Fix a regression on non-KMS
The regression was introduced by
9a1c336253579d8b58b31910325227b22b4af395
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Alex Deucher [Sun, 2 Aug 2009 00:55:43 +0000 (20:55 -0400)]
r600: fix rectangle textures
It might be better to add an instruction to normalize the
coordinates for rectanglular textures as there are some limitations
to wrap modes on unnormalized tex coords.
fixes texrect
Nicolai Hähnle [Sat, 1 Aug 2009 16:58:47 +0000 (18:58 +0200)]
r300: Fix corner-case of KIL on R300
R300 hardware (but _not_ R500) hardware requires an enabled texture unit
if KIL is used in fragment programs. We now work around the CS checker
correctly when enabling such a fake texture unit.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Sat, 1 Aug 2009 14:50:21 +0000 (16:50 +0200)]
r300: Fix Z buffer re-emit after window resize
We used to not always correctly re-emit the Z buffer size in all cases,
in particular the clear path, and invalidated state was not always picked
up correctly.
This fixes a bug where the kernel CS checker correctly complains about
a Z buffer that is too small.
Note that this bug was probably only visible with ridiculously high
framerates, i.e. glxgears.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Patrice Mandin [Sat, 1 Aug 2009 09:15:18 +0000 (11:15 +0200)]
mesa st: Use POT texture for draw pixels operations if NPOT texture is not supported
Patrice Mandin [Sat, 1 Aug 2009 09:03:30 +0000 (11:03 +0200)]
mesa st: Move logbase2 function to util/u_math.h
Roland Scheidegger [Fri, 31 Jul 2009 21:24:44 +0000 (23:24 +0200)]
radeon: fix r100/r200 compressed texture stride
This almost fixes compressed mipmapped textures on r200, though some small
mip levels are still broken.
Leave r300 compressed texture stride as is though afaik it's different
to pre-radeon-rewrite too. Also do the fixup for rs600 uncompressed row stride
at same place.
Roland Scheidegger [Fri, 31 Jul 2009 21:20:22 +0000 (23:20 +0200)]
radeon: s/r300/radeon in shared code error message
Pauli Nieminen [Tue, 28 Jul 2009 22:28:33 +0000 (01:28 +0300)]
radeon: Cliprects has to be updated before doing anything with clip rectangles
Reported to fix corruption while dragging an active window by John Bridgman.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Pauli Nieminen [Fri, 31 Jul 2009 11:03:36 +0000 (14:03 +0300)]
radeon: Remove unused variable from context.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Alex Deucher [Fri, 31 Jul 2009 19:11:41 +0000 (15:11 -0400)]
r600: make sure bos are valid before usign that
Alex Deucher [Fri, 31 Jul 2009 18:48:46 +0000 (14:48 -0400)]
r600: fix reloc setup
re-use the same reloc index for bos that are referenced
multiple times.
Fixes rain demo.
Alex Deucher [Fri, 31 Jul 2009 16:06:26 +0000 (12:06 -0400)]
r600: remove unused offset_mod stuff
this is a step in migrating to the common cs code
Alex Deucher [Fri, 31 Jul 2009 15:33:16 +0000 (11:33 -0400)]
r600: ensure we have enough room for full state emit
full state is roughly 4000 dwords, but will vary depending
on the rendering.
Also fix some warnings.
Alex Deucher [Fri, 31 Jul 2009 15:12:10 +0000 (11:12 -0400)]
r600: unify state emit into one function
Alex Deucher [Fri, 31 Jul 2009 14:53:06 +0000 (10:53 -0400)]
r600: re-arrange state setup and emit so they are not mixed
Michal Krol [Fri, 31 Jul 2009 16:12:53 +0000 (18:12 +0200)]
Rename TGSI LOOP instruction to better match theri usage.
The LOOP/ENDLOOP pair is renamed to BGNFOR/ENDFOR as its behaviour
is similar to a C language for-loop.
The BGNLOOP2/ENDLOOP2 pair is renamed to BGNLOOP/ENDLOOP as now
there is no name collision.
Chia-Wu [Fri, 31 Jul 2009 13:28:56 +0000 (07:28 -0600)]
egl: Silence warnings on x86-64.
Casting an unsigned int to or from a pointer directly gives warnings on
x86-64. Add wrappers to silence the warnings.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Alex Deucher [Fri, 31 Jul 2009 06:13:43 +0000 (02:13 -0400)]
r600: get updated pending age from cs ioctl
REQUIRES AN UPDATED DRM
Alex Deucher [Fri, 31 Jul 2009 01:27:05 +0000 (21:27 -0400)]
r600: warning fixes
Alex Deucher [Thu, 30 Jul 2009 18:59:48 +0000 (14:59 -0400)]
r600: split primitive draw into a separate function
Nicolai Hähnle [Thu, 30 Jul 2009 21:45:34 +0000 (23:45 +0200)]
r300g: Use radeon compiler for fragment programs
This is entirely untested on R500, and needs more testing on R300.
Nicolai Hähnle [Wed, 29 Jul 2009 17:22:56 +0000 (19:22 +0200)]
r300g: Remove extraneous printf
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Mon, 27 Jul 2009 18:23:49 +0000 (20:23 +0200)]
r300g: Use r300compiler for vertex shaders
Nicolai Hähnle [Thu, 30 Jul 2009 20:26:02 +0000 (22:26 +0200)]
r300/compiler: Remove inst_offset from r500_fragment_program_code
The field is not used, and in any case it would be more interesting to
manipulate from *outside* the compiler if we ever wanted to load several
fragment programs at the same time or something.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Ian Romanick [Thu, 30 Jul 2009 21:08:53 +0000 (14:08 -0700)]
progs/vp: Correct the PARAM array sizes in arl-*.txt
Chia-I Wu [Thu, 30 Jul 2009 16:42:41 +0000 (10:42 -0600)]
softpipe: Mark texture dirty when unmapped.
When a texutre transfer is mapped for writing, mark the texture dirty
when unmapped. This was done in surface creation, and this commit moves
it to happen in texture unmapping.
This fixes subtex test in progs/tests/.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Brian Paul [Thu, 30 Jul 2009 16:04:38 +0000 (10:04 -0600)]
mesa: re-enable _mesa_source_buffer_exists() call
Somehow this code wound up inside a comment a while back.
Brian Paul [Thu, 30 Jul 2009 15:59:52 +0000 (09:59 -0600)]
mesa: get_current_tex_unit() helper function
Brian Paul [Thu, 30 Jul 2009 15:50:36 +0000 (09:50 -0600)]
mesa: refactor glGetTexImage error checking code
Brian Paul [Thu, 30 Jul 2009 15:46:57 +0000 (09:46 -0600)]
tests: glGetTexImage() test
Brian Paul [Thu, 30 Jul 2009 15:24:01 +0000 (09:24 -0600)]
mesa: simplify _mesa_select_tex_image()
Brian Paul [Thu, 30 Jul 2009 15:10:26 +0000 (09:10 -0600)]
mesa: simplify _mesa_set_tex_image()
Brian Paul [Thu, 30 Jul 2009 15:03:43 +0000 (09:03 -0600)]
Merge branch 'mesa_7_5_branch'
Brian Paul [Thu, 30 Jul 2009 15:02:27 +0000 (09:02 -0600)]
mesa: move misplaced return statement
Fixes regression from commit
7d93f817c9c5222e2bdbaa9fa9f03fc502bfe878
Brian Paul [Thu, 30 Jul 2009 14:24:10 +0000 (08:24 -0600)]
Merge branch 'mesa_7_5_branch'
Brian Paul [Thu, 30 Jul 2009 14:20:01 +0000 (08:20 -0600)]
mesa: add missing return after catching program error
Brian Paul [Thu, 30 Jul 2009 14:22:57 +0000 (08:22 -0600)]
Merge branch 'mesa_7_5_branch'
Brian Paul [Thu, 30 Jul 2009 14:22:26 +0000 (08:22 -0600)]
docs: document new i915/945 extensions
Thomas Hellstrom [Thu, 30 Jul 2009 10:39:26 +0000 (12:39 +0200)]
mesa st: Change the preferred internal format for some RGB formats.
For GL_RGB5, GL_RGB4 and GL_R3_G3_B2, prefer
PIPE_FORMAT_R5G6B5_UNORM over PIPE_FORMAT_A1R5G5B5_UNORM, since hardware
is more likely to support the previous format for rendering.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Thomas Hellstrom [Thu, 30 Jul 2009 10:34:02 +0000 (12:34 +0200)]
mesa st: Report unsupported render-to-texture formats.
If a texture image is bound to a framebuffer for render-to-texture, but
the hardware doesn't support rendering to its internal format,
report the framebuffer as incomplete with FRAMEBUFFER_UNSUPPORTED.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Michal Krol [Thu, 30 Jul 2009 09:39:06 +0000 (11:39 +0200)]
tgsi: Add proper constraints to sanity.
Michal Krol [Thu, 30 Jul 2009 08:34:06 +0000 (10:34 +0200)]
tgsi: Declare a LOOP register.
The only valid usage for LOOP/ENDLOOP instructions
is LOOP[0] as a destination register.
The only valid usage for the remaining instructions
is LOOP[0].x as an indirect register.
Michal Krol [Thu, 30 Jul 2009 08:33:18 +0000 (10:33 +0200)]
tgsi: Fix number operands for LOOP/ENDLOOP.
Michal Krol [Thu, 30 Jul 2009 08:31:57 +0000 (10:31 +0200)]
vbo: Fix build on windows.
Michal Krol [Thu, 30 Jul 2009 08:12:09 +0000 (10:12 +0200)]
tgsi: Document LOOP/ENDLOOP instruction operation.
Xiang, Haihao [Thu, 30 Jul 2009 06:45:11 +0000 (14:45 +0800)]
i965: Postpone ff_sync message in CLIP kernel on IGDNG
In addition, it guarantees ff_sync message is issued
Alex Deucher [Thu, 30 Jul 2009 07:30:46 +0000 (03:30 -0400)]
r600: fix mipmaps
redbook mipmap works
Eric Anholt [Wed, 29 Jul 2009 21:06:05 +0000 (14:06 -0700)]
i915: Add support for EXT_stencil_two_side and ATI_separate_stencil.
Passes tests/stencil_twoside and glean/stencil2.
Eric Anholt [Wed, 29 Jul 2009 20:37:41 +0000 (13:37 -0700)]
i915: Add ARB_point_sprite since we already expose NV_point_sprite.
It's all fallbacks anyway due to the DD_POINT_ATTEN fallback.
Brian Paul [Wed, 29 Jul 2009 22:27:03 +0000 (16:27 -0600)]
gallium: fix SSE shadow texture instructions
When sampling a 2D shadow map we need 3 texcoord components, not 2.
The third component (distance from light source) is compared against
the texture sample to return the result (visible vs. occluded).
Also, enable proper handling of TGSI_TEXTURE_SHADOW targets in Mesa->TGSI
translation. There's a possibility for breakage in gallium drivers if
they fail to handle the TGSI_TEXTURE_SHADOW1D / TGSI_TEXTURE_SHADOW2D /
TGSI_TEXTURE_SHADOWRECT texture targets for TGSI_OPCODE_TEX/TXP instructions,
but that should be easy to fix.
With these changes, progs/demos/shadowtex.c renders properly again with
softpipe.
Alex Deucher [Wed, 29 Jul 2009 22:12:33 +0000 (18:12 -0400)]
r600: remove extraneous semicolon
Alex Deucher [Wed, 29 Jul 2009 22:06:20 +0000 (18:06 -0400)]
r600: fix texture pitch alignment
fixes texwrap
Alex Deucher [Wed, 29 Jul 2009 19:15:36 +0000 (15:15 -0400)]
r600: minor fixes
- set MAX_LOD properly
- min texel pitch is 8 texels
- emit old command buffer when re-initing base state
Nicolai Hähnle [Wed, 29 Jul 2009 18:59:56 +0000 (20:59 +0200)]
r300: Cleanup r300_fragment_program_code
Configuration register values are now stored directly in that structure.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Wed, 29 Jul 2009 17:41:07 +0000 (19:41 +0200)]
r300/compiler: Adapt AllocateHwInputs interface to common usage pattern
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Eric Anholt [Tue, 28 Jul 2009 20:51:29 +0000 (13:51 -0700)]
swrast: enable ARB_vertex_array_object.
It was getting enabled anyway but without the entrypoints installed. Whoops.
Keith Whitwell [Wed, 29 Jul 2009 11:47:23 +0000 (12:47 +0100)]
mesa/st: short-circuit glFinish calls on WIN32 only
Windows opengl32.dll calls glFinish prior to every swapbuffers, which
makes it pretty hard to get decent performance...
Work around by mapping finish to flush on PIPE_OS_WINDOWS. This is
conformant, though it might confuse poorly-written benchmarks which
attempt to measure a single event rather than figuring out the rate of
continuous processing.
Keith Whitwell [Tue, 28 Jul 2009 17:45:22 +0000 (18:45 +0100)]
mesa/st: recognize no-op scissor state when checking clear_with_quads
Some apps enable scissor but set the rectangle to the dimensions of
the window. Don't let this force us onto a slower clear path.
Keith Whitwell [Thu, 16 Jul 2009 16:51:02 +0000 (17:51 +0100)]
util: _debug_printf should print even when DEBUG is not defined
The leading underscore is meaningful... This function is used by
_warning and _error functions as well as the more common
debug_printf().
debug_printf (without underscore) gets turned off when DEBUG is
disabled, but warning/error messages still use this function to get
their message out.
(cherry picked from commit
0ac879dca797360570543d5bd0fd64f8fb8e566e)
Cooper Yuan [Wed, 29 Jul 2009 07:31:41 +0000 (15:31 +0800)]
r600: emit fog color in PS input map, fix fog related applications
Cooper Yuan [Wed, 29 Jul 2009 07:23:56 +0000 (15:23 +0800)]
R6xx/r7xx: VS export fog color as parameter
Ben Skeggs [Wed, 29 Jul 2009 01:19:52 +0000 (11:19 +1000)]
nv50: support non-blocking query_result()
Ben Skeggs [Wed, 29 Jul 2009 00:58:05 +0000 (10:58 +1000)]
nouveau: map_range returning -EBUSY isn't necessarily an error
Christoph Bumiller [Tue, 28 Jul 2009 23:07:52 +0000 (01:07 +0200)]
nv50: correct zeta formats
What was Z24S8 before is actually S8Z24, and what we had for Z16
is actually X8Z24. Now, we also have the REAL Z24S8 and I added
Z32_FLOAT as well; most of the formats need different tile_flags.
Christoph Bumiller [Tue, 28 Jul 2009 15:38:28 +0000 (17:38 +0200)]
nv50: use new 2D surface format names
Christoph Bumiller [Tue, 28 Jul 2009 15:34:07 +0000 (17:34 +0200)]
nv50: support more vtxelt formats
NOTE: we must not try to emit buffer relocations when
vtxbuf_nr is 0 but vtxelt_nr is not
Christoph Bumiller [Tue, 28 Jul 2009 15:21:31 +0000 (17:21 +0200)]
nv50: should use uint32_t ptr in draw_elements_inline_u32
Christoph Bumiller [Tue, 28 Jul 2009 22:55:03 +0000 (00:55 +0200)]
nv50: TIC/TSC fixes and additions
Red and blue were interchanged in TIC.
Add border color and some formats.
Christoph Bumiller [Tue, 28 Jul 2009 22:51:35 +0000 (00:51 +0200)]
nv50: fix sx/dx typo in transfer_rect_m2mf
Christoph Bumiller [Tue, 28 Jul 2009 23:21:41 +0000 (01:21 +0200)]
nv50: fix viewport transform
The translation also needs to be inverted, and in bypass mode
the state tracker incorrectly assumes that Y = 0 = TOP, so we
need inversion there to; NDC clipping has to be deactivated
explicitly.
Christoph Bumiller [Tue, 28 Jul 2009 22:35:12 +0000 (00:35 +0200)]
nv50: use correct scissor reg
Alex Deucher [Tue, 28 Jul 2009 22:09:38 +0000 (18:09 -0400)]
r600: fix tex clamp modes
This makes texwrap look better.
Alex Deucher [Tue, 28 Jul 2009 21:59:54 +0000 (17:59 -0400)]
r600: implement texture border color
Alex Deucher [Tue, 28 Jul 2009 20:58:41 +0000 (16:58 -0400)]
r600: fix flat shading
Set the flat shading bit on the appropriate PS input
depending on the type of attribute it is. The VS output
and PS input routing should probably be made more dynamic
at some point. We may want to use semantic ids to make
it easier.
Alex Deucher [Tue, 28 Jul 2009 19:58:01 +0000 (15:58 -0400)]
r600: don't call r700UpdateShaders twice for each render
Alex Deucher [Tue, 28 Jul 2009 19:53:45 +0000 (15:53 -0400)]
r600: move r700TranslateFragmentShader into r700UpdateShaders
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:05:59 +0000 (17:05 +0200)]
glx: assign per screen driver configs (DRISW)
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:05:50 +0000 (17:05 +0200)]
glx: assign per screen driver configs (DRI)
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:05:43 +0000 (17:05 +0200)]
glx: assign per screen driver configs (DRI2)
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:04:52 +0000 (17:04 +0200)]
glx: properly release DRI configs
Release per screen DRI driver configs during screen destruction.
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:03:54 +0000 (17:03 +0200)]
glx: cache DRI configs in __GLXscreenConfigsRec
Alex Deucher [Tue, 28 Jul 2009 15:10:38 +0000 (11:10 -0400)]
r600: disable flat shade fix in
506bacb8e40b0a170a4b620113506925d2333735
This breaks textures. We need to only set this bit for
attributes that that need flat shading.
Brian Paul [Tue, 28 Jul 2009 14:58:25 +0000 (08:58 -0600)]
Merge branch 'mesa_7_5_branch'
Conflicts:
Makefile
configs/default
docs/relnotes.html
src/mesa/main/version.h
Brian Paul [Mon, 27 Jul 2009 23:18:05 +0000 (17:18 -0600)]
gallium: minor code/comments clean-up
Chia-I Wu [Mon, 27 Jul 2009 22:57:36 +0000 (16:57 -0600)]
egl: Comment out unused tables in_eglFillInConfigs
This silences a compiler warning.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Vinson Lee [Tue, 28 Jul 2009 14:54:14 +0000 (08:54 -0600)]
progs/trivial: add missing files to Makefile, .gitignore
Cooper Yuan [Tue, 28 Jul 2009 05:57:07 +0000 (13:57 +0800)]
R6xx/r7xx: enable flat shading, this can fix quadric/accanti/accpersp
Alex Deucher [Mon, 27 Jul 2009 22:12:30 +0000 (18:12 -0400)]
r600: fix _REV texture format component swizzles
Brian Paul [Mon, 27 Jul 2009 21:42:29 +0000 (15:42 -0600)]
mesa: regenerated file
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:58:08 +0000 (17:58 +0200)]
glx: remove XTHREADS support
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:57:48 +0000 (17:57 +0200)]
docs: do not mentions xthreads any more
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:57:22 +0000 (17:57 +0200)]
glapi: regenerated GL API assembly files
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:56:52 +0000 (17:56 +0200)]
glapi: remove XTHREADS support
Brian Paul [Mon, 27 Jul 2009 21:32:50 +0000 (15:32 -0600)]
intel: Fix leak of DRI option info due to using the wrong free routine.
(cherry picked from commit
6d66f23c50ebe8f973757b6fd1b81c9b7920c447)
Brian Paul [Mon, 27 Jul 2009 21:28:49 +0000 (15:28 -0600)]
intel: Clean up leak of driver context structure on context destroy.
(cherry picked from commit
ddef7dc87b2001fbe117ee5f24a0c645ee95a03c)