mesa.git
15 years agoi965: fix polygon stipple when rendering to FBO
Robert Ellison [Thu, 12 Mar 2009 17:46:31 +0000 (11:46 -0600)]
i965: fix polygon stipple when rendering to FBO

The polygon stipple pattern, like the viewport and the
polygon face orientation, must be inverted on the i965
when rendering to a FBO (which itself has an inverted pixel
coordinate system compared to raw Mesa).

In addition, the polygon stipple offset, which orients
the stipple to the window system, disappears when rendering
to an FBO (because the window system offset doesn't apply,
and there's no associated FBO offset).

With these fixes, the conform triangle and polygon stipple
tests pass when rendering to texture.

15 years agotgsi: Localise SCS code.
Michal Krol [Thu, 12 Mar 2009 10:56:23 +0000 (11:56 +0100)]
tgsi: Localise SCS code.

15 years agotgsi: Rewrite NRM opcode, store 1.0 in W component.
Michal Krol [Thu, 12 Mar 2009 10:54:11 +0000 (11:54 +0100)]
tgsi: Rewrite NRM opcode, store 1.0 in W component.

15 years agotgsi: Begin documenting NV_fragment_program2 instruction set operations.
Michal Krol [Thu, 12 Mar 2009 10:44:12 +0000 (11:44 +0100)]
tgsi: Begin documenting NV_fragment_program2 instruction set operations.

15 years agotgsi: Begin documenting ARB_fragment_program instruction set operations.
Michal Krol [Thu, 12 Mar 2009 10:30:33 +0000 (11:30 +0100)]
tgsi: Begin documenting ARB_fragment_program instruction set operations.

15 years agotgsi: Document ARB_vertex_program instruction set operations.
Michal Krol [Thu, 12 Mar 2009 10:23:12 +0000 (11:23 +0100)]
tgsi: Document ARB_vertex_program instruction set operations.

15 years agotgsi: Begin documenting NV_vertex_program2 instruction set operations.
Michal Krol [Thu, 12 Mar 2009 10:20:05 +0000 (11:20 +0100)]
tgsi: Begin documenting NV_vertex_program2 instruction set operations.

15 years agotrivial: draw non-interleaved arrays
Keith Whitwell [Thu, 12 Mar 2009 17:21:26 +0000 (17:21 +0000)]
trivial: draw non-interleaved arrays

15 years agostw: fix uninitialized variable issue
Keith Whitwell [Thu, 12 Mar 2009 16:57:11 +0000 (16:57 +0000)]
stw: fix uninitialized variable issue

15 years agoutil: fix debug_assert() to avoid unused variable warnings in release builds
Keith Whitwell [Thu, 12 Mar 2009 16:56:24 +0000 (16:56 +0000)]
util: fix debug_assert() to avoid unused variable warnings in release builds

15 years agotrace: Wrap pipe_buffers
Jakob Bornecrantz [Thu, 12 Mar 2009 12:20:37 +0000 (13:20 +0100)]
trace: Wrap pipe_buffers

15 years agotrace: Add dump util functions for wrapped pointers
Jakob Bornecrantz [Thu, 12 Mar 2009 14:37:13 +0000 (15:37 +0100)]
trace: Add dump util functions for wrapped pointers

15 years agodemos: fix error string, comment
Brian Paul [Thu, 12 Mar 2009 15:31:59 +0000 (09:31 -0600)]
demos: fix error string, comment

15 years agomesa: fix transposed red/blue in store_texel_rgb888/bgr888() functions
Brian Paul [Thu, 12 Mar 2009 15:30:08 +0000 (09:30 -0600)]
mesa: fix transposed red/blue in store_texel_rgb888/bgr888() functions

15 years agodemos: fix typo
Brian Paul [Wed, 11 Mar 2009 22:27:58 +0000 (16:27 -0600)]
demos: fix typo

15 years agodemos: use glGenerateMipmapEXT entrypoint in cubemap.c
Keith Whitwell [Thu, 12 Mar 2009 14:30:22 +0000 (14:30 +0000)]
demos: use glGenerateMipmapEXT entrypoint in cubemap.c

glGenerateMipmap() is part of ARB_framebuffer_object, which many mesa
drivers don't advertise.  Add check for EXT_framebuffer_object.

15 years agomesa test prog for ATI_envmap_bumpmap
Roland Scheidegger [Thu, 12 Mar 2009 14:07:22 +0000 (15:07 +0100)]
mesa test prog for ATI_envmap_bumpmap

15 years agoi965: add support for ATI_envmap_bumpmap
Roland Scheidegger [Thu, 12 Mar 2009 14:06:17 +0000 (15:06 +0100)]
i965: add support for ATI_envmap_bumpmap

15 years agoregenerate glapi
Roland Scheidegger [Thu, 12 Mar 2009 14:04:47 +0000 (15:04 +0100)]
regenerate glapi

15 years agomesa: add support for ATI_envmap_bumpmap
Roland Scheidegger [Thu, 12 Mar 2009 14:01:16 +0000 (15:01 +0100)]
mesa: add support for ATI_envmap_bumpmap

add new entrypoints, new texture format, etc
translate in texenvprogram.c for drivers using the mesa-generated tex env
fragment program
also handled in swrast, but not tested (cannot work due to negative texel
results not handled correctly)

15 years agoprogs/glsl: Ignore
Jakob Bornecrantz [Thu, 12 Mar 2009 12:20:05 +0000 (13:20 +0100)]
progs/glsl: Ignore

15 years agotrace: Move buffer functions from winsys to screen
Jakob Bornecrantz [Wed, 11 Mar 2009 21:45:48 +0000 (22:45 +0100)]
trace: Move buffer functions from winsys to screen

15 years agotrace: Remove all whitespace at EOL
Jakob Bornecrantz [Wed, 11 Mar 2009 16:42:34 +0000 (17:42 +0100)]
trace: Remove all whitespace at EOL

15 years agotrace: Fixup trace a bit
Jakob Bornecrantz [Wed, 11 Mar 2009 16:37:38 +0000 (17:37 +0100)]
trace: Fixup trace a bit

15 years agomesa: add missing _glthread_INIT_MUTEX in _mesa_new_framebuffer()
Keith Whitwell [Thu, 12 Mar 2009 10:09:51 +0000 (10:09 +0000)]
mesa: add missing _glthread_INIT_MUTEX in _mesa_new_framebuffer()

15 years agoi965: fix polygon face orientation when rendering to FBO
Robert Ellison [Wed, 11 Mar 2009 22:27:38 +0000 (16:27 -0600)]
i965: fix polygon face orientation when rendering to FBO

In the i965, the FBO coordinate system is inverted from the standard
OpenGL/Mesa coordinate system; that means that the viewport and the
polygon face orientation have to be inverted if rendering to a FBO.

The viewport was already being handled correctly; but polygon face
was not.  This caused a conform failure when rendering to texture with
two-sided lighting enabled.

This fixes the problem in the i965 driver, and adds to the comment about
the gl_framebuffer "Name" field so that this isn't a surprise to other
driver writers.

15 years agomesa: remove some last remnants of GL_MESA_program_debug
Brian Paul [Thu, 12 Mar 2009 02:08:37 +0000 (20:08 -0600)]
mesa: remove some last remnants of GL_MESA_program_debug

15 years agomesa: minor comments
Brian Paul [Thu, 12 Mar 2009 01:34:41 +0000 (19:34 -0600)]
mesa: minor comments

15 years agomesa: remove gl_texture_object::_Function field and associated code
Brian Paul [Thu, 12 Mar 2009 01:23:01 +0000 (19:23 -0600)]
mesa: remove gl_texture_object::_Function field and associated code

It was only used in one place in swrast.

15 years agointel: include main/viewport.h
Brian Paul [Thu, 12 Mar 2009 01:00:25 +0000 (19:00 -0600)]
intel: include main/viewport.h

15 years agor300-gallium: Don't flush textures more than necessary.
Corbin Simpson [Wed, 11 Mar 2009 22:20:16 +0000 (15:20 -0700)]
r300-gallium: Don't flush textures more than necessary.

15 years agor300-gallium: Fix texture filters.
Corbin Simpson [Wed, 11 Mar 2009 22:09:56 +0000 (15:09 -0700)]
r300-gallium: Fix texture filters.

15 years agor300-gallium: r500-fs: More texture fixes.
Corbin Simpson [Wed, 11 Mar 2009 22:05:52 +0000 (15:05 -0700)]
r300-gallium: r500-fs: More texture fixes.

15 years agor300-gallium: r500-fs: Add shader dumper and more tex work.
Corbin Simpson [Wed, 11 Mar 2009 21:26:25 +0000 (14:26 -0700)]
r300-gallium: r500-fs: Add shader dumper and more tex work.

15 years agor300-gallium: Fix CS count for texture emit.
Corbin Simpson [Wed, 11 Mar 2009 18:54:53 +0000 (11:54 -0700)]
r300-gallium: Fix CS count for texture emit.

15 years agor300-gallium: r500-fs: Add SWZ.
Corbin Simpson [Wed, 11 Mar 2009 18:23:15 +0000 (11:23 -0700)]
r300-gallium: r500-fs: Add SWZ.

15 years agor300-gallium: Fix CS count in fb state emit.
Corbin Simpson [Wed, 11 Mar 2009 10:24:19 +0000 (03:24 -0700)]
r300-gallium: Fix CS count in fb state emit.

15 years agor300-gallium: Start swizzles.
Corbin Simpson [Wed, 11 Mar 2009 03:43:11 +0000 (20:43 -0700)]
r300-gallium: Start swizzles.

15 years agor300-gallium: Begin R500 fragment shader assembler.
Corbin Simpson [Tue, 10 Mar 2009 22:40:41 +0000 (15:40 -0700)]
r300-gallium: Begin R500 fragment shader assembler.

I love it so much. I also hate it a lot.

15 years agoi965: fix lock-ups when GLSL program wrote to gl_FragDepth
Brian Paul [Wed, 11 Mar 2009 19:06:13 +0000 (13:06 -0600)]
i965: fix lock-ups when GLSL program wrote to gl_FragDepth

It seems the code that set up the FB_WRITE message was incomplete in this
case.  The number of payload registers was wrong and that caused a hang.

It would be good to have a second set of eyes take a look at this...

15 years agotrace: Fixup trace a bit
Jakob Bornecrantz [Wed, 11 Mar 2009 13:27:54 +0000 (14:27 +0100)]
trace: Fixup trace a bit

15 years agoxdemos: On termination with `esc` close the contexts correctly.
Alan Hourihane [Wed, 11 Mar 2009 13:33:49 +0000 (13:33 +0000)]
xdemos: On termination with `esc` close the contexts correctly.

15 years agotgsi: Implement RFL, SFL, STR, X2D opcodes.
Michal Krol [Wed, 11 Mar 2009 12:49:43 +0000 (13:49 +0100)]
tgsi: Implement RFL, SFL, STR, X2D opcodes.

15 years agotgsi: Begin documenting NV_fragment_program instruction set operations.
Michal Krol [Wed, 11 Mar 2009 11:52:20 +0000 (12:52 +0100)]
tgsi: Begin documenting NV_fragment_program instruction set operations.

15 years agotgsi: Implement RCC opcode.
Michal Krol [Wed, 11 Mar 2009 11:10:16 +0000 (12:10 +0100)]
tgsi: Implement RCC opcode.

15 years agotgsi: Document NV_vertex_program1_1 instruction set operations.
Michal Krol [Wed, 11 Mar 2009 10:55:27 +0000 (11:55 +0100)]
tgsi: Document NV_vertex_program1_1 instruction set operations.

15 years agoi965: more code clean-ups, comments
Brian Paul [Tue, 10 Mar 2009 22:17:28 +0000 (16:17 -0600)]
i965: more code clean-ups, comments

15 years agoi965: minor code clean-ups, comments
Brian Paul [Tue, 10 Mar 2009 21:54:28 +0000 (15:54 -0600)]
i965: minor code clean-ups, comments

15 years agoi965: use new cast wrappers
Brian Paul [Tue, 10 Mar 2009 21:53:33 +0000 (15:53 -0600)]
i965: use new cast wrappers

15 years agoi965: added cast wrappers, comments
Brian Paul [Tue, 10 Mar 2009 21:52:28 +0000 (15:52 -0600)]
i965: added cast wrappers, comments

15 years agoi965: asst. code clean-ups, comments
Brian Paul [Tue, 10 Mar 2009 21:43:46 +0000 (15:43 -0600)]
i965: asst. code clean-ups, comments

15 years agoi965: fix typos in comments
Brian Paul [Tue, 10 Mar 2009 21:34:07 +0000 (15:34 -0600)]
i965: fix typos in comments

15 years agoglsl: remove _slang_attach_storage() function
Brian Paul [Wed, 11 Mar 2009 00:15:05 +0000 (18:15 -0600)]
glsl: remove _slang_attach_storage() function

This was used to handle both variable declarations and references to variables.
Instead, just do storage allocation and assignment for declarations and
references, respectively.

This is a step toward better var/uniform allocation (only allocate storage
for vars/uniforms that are actually referenced by the code).

15 years agoglsl: some clean-ups, remove old assertions, add new assertions
Brian Paul [Tue, 10 Mar 2009 23:23:36 +0000 (17:23 -0600)]
glsl: some clean-ups, remove old assertions, add new assertions

15 years agoglsl: remove stray/unneeded totalSize assignment
Brian Paul [Tue, 10 Mar 2009 23:09:52 +0000 (17:09 -0600)]
glsl: remove stray/unneeded totalSize assignment

15 years agomesa: fix dumb sizeof() vs. strlen() mix-up
Brian Paul [Tue, 10 Mar 2009 16:16:37 +0000 (10:16 -0600)]
mesa: fix dumb sizeof() vs. strlen() mix-up

15 years agoglsl: fix typo: s/vec4_tex1d_proj/vec4_tex_1d_proj/
Brian Paul [Tue, 10 Mar 2009 15:04:28 +0000 (09:04 -0600)]
glsl: fix typo: s/vec4_tex1d_proj/vec4_tex_1d_proj/

This regression came from commit c0b59420eec5ffdf22a5919d38851c3620b97c09.

15 years agoprogs/tests: compile with SCons and glew
Keith Whitwell [Tue, 10 Mar 2009 13:11:23 +0000 (13:11 +0000)]
progs/tests: compile with SCons and glew

Also get mingw cross-compilation of these tests working

15 years agotrivial: add a logic op test
Keith Whitwell [Tue, 10 Mar 2009 11:39:41 +0000 (11:39 +0000)]
trivial: add a logic op test

15 years agovpglsl: add simple mov.glsl
Keith Whitwell [Mon, 9 Mar 2009 19:34:13 +0000 (19:34 +0000)]
vpglsl: add simple mov.glsl

15 years agotgsi: Untabify.
Michal Krol [Tue, 10 Mar 2009 09:24:54 +0000 (10:24 +0100)]
tgsi: Untabify.

15 years agotgsi: Implement CLAMP opcode.
Michal Krol [Tue, 10 Mar 2009 09:22:34 +0000 (10:22 +0100)]
tgsi: Implement CLAMP opcode.

15 years agotgsi: Consider INDEX, NEGATE, MULTIPLYMATRIX opcodes for removal.
Michal Krol [Tue, 10 Mar 2009 09:15:29 +0000 (10:15 +0100)]
tgsi: Consider INDEX, NEGATE, MULTIPLYMATRIX opcodes for removal.

15 years agotgsi: ARL and FLOOR opcodes have the same implementation.
Michal Krol [Tue, 10 Mar 2009 09:12:47 +0000 (10:12 +0100)]
tgsi: ARL and FLOOR opcodes have the same implementation.

15 years agotgsi: ARL is a vector instruction.
Michal Krol [Tue, 10 Mar 2009 09:08:20 +0000 (10:08 +0100)]
tgsi: ARL is a vector instruction.

15 years agotgsi: Note that LOG and EXP are approximations.
Michal Krol [Tue, 10 Mar 2009 09:06:19 +0000 (10:06 +0100)]
tgsi: Note that LOG and EXP are approximations.

15 years agotgsi: Document EXT_vertex_shader instruction set operations.
Michal Krol [Tue, 10 Mar 2009 09:04:29 +0000 (10:04 +0100)]
tgsi: Document EXT_vertex_shader instruction set operations.

15 years agoradeon-gallium: Unbreak non-RADEON_SOFTPIPE.
Corbin Simpson [Tue, 10 Mar 2009 09:08:59 +0000 (02:08 -0700)]
radeon-gallium: Unbreak non-RADEON_SOFTPIPE.

Hehe, sleep may be necessary now.

15 years agor300-gallium: Initial, broken, query setup.
Corbin Simpson [Tue, 10 Mar 2009 08:54:24 +0000 (01:54 -0700)]
r300-gallium: Initial, broken, query setup.

Not going to bother unbreaking it here until it's unbroken elsewhere.

15 years agoradeon-gallium: Unbreak RADEON_SOFTPIPE.
Corbin Simpson [Tue, 10 Mar 2009 08:52:02 +0000 (01:52 -0700)]
radeon-gallium: Unbreak RADEON_SOFTPIPE.

And there was much rejoicing.

15 years agor300-gallium: Unbreak fallback in surface_fill.
Corbin Simpson [Tue, 10 Mar 2009 07:55:26 +0000 (00:55 -0700)]
r300-gallium: Unbreak fallback in surface_fill.

15 years agor300-gallium: Fix a handful of compiler warnings.
Corbin Simpson [Tue, 10 Mar 2009 07:14:56 +0000 (00:14 -0700)]
r300-gallium: Fix a handful of compiler warnings.

Missing INLINE, missing declarations, extraneous definitions. The usual.

15 years agor300-gallium: First stab at texture support.
Corbin Simpson [Tue, 10 Mar 2009 07:27:13 +0000 (00:27 -0700)]
r300-gallium: First stab at texture support.

15 years agor300-gallium: Moar fixes in the register file.
Corbin Simpson [Tue, 10 Mar 2009 07:10:24 +0000 (00:10 -0700)]
r300-gallium: Moar fixes in the register file.

Sorry, but it's confusing when format0 in r300_reg != format0 in the docs.

15 years agoxmesa: set back-buffer's drawable field
Brian Paul [Mon, 9 Mar 2009 20:33:19 +0000 (14:33 -0600)]
xmesa: set back-buffer's drawable field

Fixes back-buffer rendering when MESA_BACK_BUFFER=pixmap

15 years agovpglsl: build with scons and glew
Keith Whitwell [Mon, 9 Mar 2009 17:10:12 +0000 (17:10 +0000)]
vpglsl: build with scons and glew

15 years agodemos: in progs/demos/cubemap.c press c/f to cycle through clamp/filter modes
Brian Paul [Mon, 9 Mar 2009 17:49:46 +0000 (11:49 -0600)]
demos: in progs/demos/cubemap.c press c/f to cycle through clamp/filter modes

Also generate a mipmap for the default checker images.

15 years agoi965: fix cube map lock-up / corruption
Brian Paul [Mon, 9 Mar 2009 17:48:39 +0000 (11:48 -0600)]
i965: fix cube map lock-up / corruption

If we're using anything but GL_NEAREST sampling of a cube map, we need to
use the BRW_TEXCOORDMODE_CUBE texcoord wrap mode.  Before this, the GPU
would either lock up or subsequent texture filtering would be corrupted.

15 years agoscons: Also link in additional LLVM components.
Michel Dänzer [Mon, 9 Mar 2009 16:46:49 +0000 (17:46 +0100)]
scons: Also link in additional LLVM components.

They don't seem necessary here, but they shouldn't hurt either...

15 years agolinux-llvm config: Linking with required llvm libs
Kamalneet Singh [Mon, 9 Mar 2009 10:35:44 +0000 (16:05 +0530)]
linux-llvm config: Linking with required llvm libs

15 years agoscons: Also define USE_XSHM for the glx/xlib state tracker build.
Michel Dänzer [Mon, 9 Mar 2009 16:39:14 +0000 (17:39 +0100)]
scons: Also define USE_XSHM for the glx/xlib state tracker build.

Fixes an inconsisten definition of struct xmesa_buffer between there and
winsys/xlib, resulting in a crash in XPutImage.

15 years agost: silence warning
Brian Paul [Mon, 9 Mar 2009 15:39:21 +0000 (09:39 -0600)]
st: silence warning

15 years agost: remove unused DrawPixels code
Brian Paul [Mon, 9 Mar 2009 15:38:43 +0000 (09:38 -0600)]
st: remove unused DrawPixels code

15 years agost: use pointer_to_offset() cast wrapper to convert pointers to uint
Brian Paul [Mon, 9 Mar 2009 15:33:46 +0000 (09:33 -0600)]
st: use pointer_to_offset() cast wrapper to convert pointers to uint

Silences warnings with 64-bit builds.  See comments for details.

15 years agomesa: reorder register file enums
Brian Paul [Sun, 8 Mar 2009 18:07:41 +0000 (12:07 -0600)]
mesa: reorder register file enums

15 years agotrivial: add tri-stipple to SConscript
Keith Whitwell [Mon, 9 Mar 2009 15:00:31 +0000 (15:00 +0000)]
trivial: add tri-stipple to SConscript

15 years agost: also check for a8 texture support in bitmap code
Keith Whitwell [Fri, 6 Mar 2009 21:17:59 +0000 (21:17 +0000)]
st: also check for a8 texture support in bitmap code

15 years agofix typo in fragment pipe alu define, should fix dot3_rgb tex combine
Roland Scheidegger [Mon, 9 Mar 2009 14:53:41 +0000 (15:53 +0100)]
fix typo in fragment pipe alu define, should fix dot3_rgb tex combine

15 years agovbo: yet tighter still usage of FLUSH_NEED_CURRENT
Keith Whitwell [Mon, 9 Mar 2009 14:40:34 +0000 (14:40 +0000)]
vbo: yet tighter still usage of FLUSH_NEED_CURRENT

Previous change broke redbook/polys and probably others.  I'm fairly
sure that drivers like r300 don't need to touch
ctx->Driver.NeedVertices, but this code is incredibly fragile and I'm
not confident about removing it from there.  Hopefully this gets
things working again.

15 years agofp: enable a second texture unit and add a kil test for it
Keith Whitwell [Mon, 9 Mar 2009 14:08:35 +0000 (14:08 +0000)]
fp: enable a second texture unit and add a kil test for it

15 years agoFix up another instance of _mesa_unreference_framebuffer().
Michel Dänzer [Mon, 9 Mar 2009 12:27:54 +0000 (13:27 +0100)]
Fix up another instance of _mesa_unreference_framebuffer().

15 years agovbo: stricter checks on Driver.NeedFlush
Keith Whitwell [Mon, 9 Mar 2009 12:17:28 +0000 (12:17 +0000)]
vbo: stricter checks on Driver.NeedFlush

This variable is being used in the r300 driver to trigger a flush under
circumstances unrelated to the use in the vbo module.  Tighten up the
checks in vbo so as to avoid conflict with r300.

Reported by Maciej Cencora <m.cencora@gmail.com>

15 years agogallium: Fix p_refcnt.h for C++ compilers.
Michel Dänzer [Mon, 9 Mar 2009 11:58:16 +0000 (12:58 +0100)]
gallium: Fix p_refcnt.h for C++ compilers.

15 years agotgsi: Implement CND, CND0 opcodes.
Michal Krol [Mon, 9 Mar 2009 07:50:01 +0000 (08:50 +0100)]
tgsi: Implement CND, CND0 opcodes.

15 years agotgsi: Remove redundant micro_ge() -- use micro_le().
Michal Krol [Mon, 9 Mar 2009 07:44:28 +0000 (08:44 +0100)]
tgsi: Remove redundant micro_ge() -- use micro_le().

15 years agotgsi: Document ATI_fragment_shader instruction set operations.
Michal Krol [Mon, 9 Mar 2009 07:37:34 +0000 (08:37 +0100)]
tgsi: Document ATI_fragment_shader instruction set operations.

15 years agor300-gallium: Unbreak trivial/point.
Corbin Simpson [Sun, 8 Mar 2009 22:04:10 +0000 (15:04 -0700)]
r300-gallium: Unbreak trivial/point.

Oops, forgot to remove that.

Edit: And trivial/line and trivial/tri.

15 years agotgsi: Document NV_vertex_program instruction set operations.
Michal Krol [Sun, 8 Mar 2009 18:15:47 +0000 (19:15 +0100)]
tgsi: Document NV_vertex_program instruction set operations.

15 years agor300-gallium: Correct vertex format setup, cleanup regs and debugging.
Corbin Simpson [Sat, 7 Mar 2009 21:26:48 +0000 (13:26 -0800)]
r300-gallium: Correct vertex format setup, cleanup regs and debugging.

trivial/point no longer hardlocks.

15 years agor300-gallium: Clean up RS.
Corbin Simpson [Sat, 7 Mar 2009 19:31:36 +0000 (11:31 -0800)]
r300-gallium: Clean up RS.

Wow, there were buggies by the boatload in there.