Brian Paul [Mon, 15 Dec 2008 23:44:55 +0000 (16:44 -0700)]
mesa: checkpoint: handle uniform vars in _slang_gen_var_decl()
This allows uniform declarations with scalar/array initializers.
The code is rough though, and will be cleaned up.
Brian Paul [Sat, 13 Dec 2008 01:03:48 +0000 (18:03 -0700)]
mesa: use IFLOOR(x) instead of (int) FLOORF(x)
Brian Paul [Sat, 13 Dec 2008 01:00:47 +0000 (18:00 -0700)]
mesa: place glsl constant arrays in constant memory
For example, a declaration like
const float[3] xxx = float[3](1.1, 2.2, 3.3);
will place the array in the constant buffer whereas a regular, non-const array
would be placed in the temporary register file.
Next up: do the same thing for uniform arrays.
Brian Paul [Sat, 13 Dec 2008 01:00:19 +0000 (18:00 -0700)]
mesa: remove old size=4 limit
Brian Paul [Fri, 12 Dec 2008 23:20:31 +0000 (16:20 -0700)]
mesa: code clean-up in glsl compiler
Brian Paul [Fri, 12 Dec 2008 23:02:31 +0000 (16:02 -0700)]
mesa: remove unneeded swizzle init code in glsl compiler
Brian Paul [Fri, 12 Dec 2008 22:34:58 +0000 (15:34 -0700)]
mesa: disable glsl debug output
Brian Paul [Fri, 12 Dec 2008 22:11:08 +0000 (15:11 -0700)]
mesa: remove unused varpool code in glsl compiler
Brian Paul [Fri, 12 Dec 2008 22:07:21 +0000 (15:07 -0700)]
mesa: basic array constructors work now
For example: float[3] xxx = float[3](1.1, 2.2, 3.3);
Optimizations for const-qualified arrays next.
Brian Paul [Fri, 12 Dec 2008 22:01:00 +0000 (15:01 -0700)]
mesa: copy array_len in slang_fully_specified_type_copy()
Brian Paul [Fri, 12 Dec 2008 22:00:06 +0000 (15:00 -0700)]
mesa: remove incorrect array_len assignment
Brian Paul [Fri, 12 Dec 2008 20:18:30 +0000 (13:18 -0700)]
mesa: array size fix in _slang_typeof_operation()
Brian Paul [Fri, 12 Dec 2008 20:05:29 +0000 (13:05 -0700)]
mesa: fix some more GLSL 1.20 array things.
Function that return arrays should work now.
Brian Paul [Fri, 12 Dec 2008 17:32:56 +0000 (10:32 -0700)]
mesa: more glsl function renaming
Brian Paul [Fri, 12 Dec 2008 17:29:15 +0000 (10:29 -0700)]
mesa: use _slang_alloc()
Brian Paul [Fri, 12 Dec 2008 17:22:47 +0000 (10:22 -0700)]
mesa: glsl compiler function renaming
Brian Paul [Fri, 12 Dec 2008 17:17:58 +0000 (10:17 -0700)]
mesa: more glsl type/function movement
Brian Paul [Fri, 12 Dec 2008 17:11:41 +0000 (10:11 -0700)]
mesa: move some glsl compiler functions to different files to be more consistant
Brian Paul [Fri, 12 Dec 2008 17:03:31 +0000 (10:03 -0700)]
mesa: move _slang_locate_function() to different file
Brian Paul [Fri, 12 Dec 2008 16:58:18 +0000 (09:58 -0700)]
mesa: remove unused fixup table code in glsl compiler
Brian Paul [Fri, 12 Dec 2008 16:56:13 +0000 (09:56 -0700)]
mesa: checkpoint: GLSL 1.20 array constructors
Brian Paul [Fri, 12 Dec 2008 02:34:43 +0000 (19:34 -0700)]
mesa: consolidate variable declaration initializer code for globals too
Brian Paul [Fri, 12 Dec 2008 02:28:22 +0000 (19:28 -0700)]
mesa: move variable initializer IR generation into _slang_gen_var_decl()
More code consolidation coming...
Brian Paul [Fri, 12 Dec 2008 02:10:58 +0000 (19:10 -0700)]
mesa: simplify some glsl variable declaration code
Brian Paul [Fri, 12 Dec 2008 01:49:28 +0000 (18:49 -0700)]
mesa: glsl clean-ups
Brian Paul [Fri, 12 Dec 2008 01:02:19 +0000 (18:02 -0700)]
mesa: checkpoint commit of GLSL 1.20 array syntax.
This allows things like float[3] x = float[3](1., 2., 3.);
Parsing and AST construction now. Codegen not working yet.
Brian Paul [Tue, 9 Dec 2008 21:30:42 +0000 (14:30 -0700)]
mesa: in slang linker, replace assertion with link error when max samplers exceeded
Brian Paul [Tue, 9 Dec 2008 21:29:14 +0000 (14:29 -0700)]
demos: updated tests/floattex.c (doesn't work just yet).
Brian Paul [Tue, 9 Dec 2008 21:26:02 +0000 (14:26 -0700)]
mesa: move _mesa_dlopen(), etc into separate dlopen.c file
Brian Paul [Mon, 8 Dec 2008 22:42:54 +0000 (15:42 -0700)]
glut: added GLUT_PPM_FILE env var to dump first frame to a PPM file
Set GLUT_PPM_FILE to the desired filename. The first frame rendered will
be written to that file.
Pierre Willenbrock [Mon, 8 Dec 2008 22:06:51 +0000 (14:06 -0800)]
intel: Require the right amount of space in glBitmap blit acceleration.
This leads to problems when the batchbuffer is flushed, but the bitmap
data could not fit into it.
Eric Anholt [Sun, 7 Dec 2008 05:14:56 +0000 (21:14 -0800)]
mesa: Fix GenerateMipmapEXT(GL_TEXTURE_CUBE_MAP_ARB).
The ctx->Driver.GenerateMipmap() hook only expects cubemap face enums, not
CUBE_MAP_ARB, so walk all faces when we encounter that. Fixes oglconform
fbo.c segfault with both swrast and i965 drivers.
Eric Anholt [Sat, 6 Dec 2008 23:47:23 +0000 (15:47 -0800)]
intel: Fall back on rendering to a texture attachment with a border.
Fixes a segfault in oglconform fbo.c test.
Eric Anholt [Sat, 6 Dec 2008 23:21:47 +0000 (15:21 -0800)]
intel: Fix crash in automatic mipmap generation for glCopyTex{Sub,}Image.
The images aren't mapped at this point, so we want the generic Mesa path for
GenerateMipmapEXT that does the mapping/unmapping for us. Ideally Mesa would
just call it for us.
Eric Anholt [Sat, 6 Dec 2008 22:51:17 +0000 (14:51 -0800)]
intel: Fix glCopyPixels blit acceleration for FBO destinations.
This was another opportunity to either get clipped to screen size or not get
clipped enough and draw outside of object boundaries.
Eric Anholt [Sat, 6 Dec 2008 22:21:12 +0000 (14:21 -0800)]
intel: Fix glBitmap blit acceleration for FBO destinations.
Bug #18914. Fixes fbo_firecube hang due to drawing outside the FBO bounds.
Thanks to Pierre Willenbrock for debugging the issue.
Eric Anholt [Wed, 3 Dec 2008 23:32:51 +0000 (15:32 -0800)]
intel: Put CopyTexImage fallback under DEBUG_FALLBACKS not DEBUG_TEXTURE.
Brian [Sun, 30 Nov 2008 00:25:44 +0000 (17:25 -0700)]
mesa: assorted clean-ups, updated comments, etc.
Brian [Sat, 29 Nov 2008 23:03:40 +0000 (16:03 -0700)]
mesa: replace large macros with inline functions
Brian [Wed, 3 Dec 2008 05:51:39 +0000 (22:51 -0700)]
demos: added simple vertex shader texture test.
Draw a quadmesh where Z coord is taken from a texture map.
Jeremy Huddleston [Thu, 4 Dec 2008 01:03:13 +0000 (17:03 -0800)]
darwin: Use -Os instead of -O2
(cherry picked from commit
456dbb143a0d11b69d8af0d493cd84efb0596273)
Eric Anholt [Wed, 3 Dec 2008 19:36:55 +0000 (11:36 -0800)]
i965: Fix failure to upload new constant data when changing programs.
This is fallout from the ffvertex_prog.c work. It doesn't call
ProgramStringNotify, so we don't set param_state, so we wouldn't track when
VP parameters changed, and constants wouldn't get uploaded. Instead, remove
param_state entirely and just use the real value that we want to be tracking.
Fixes rendering in openarena since BRW_NEW_BATCH got disentangled from
BRW_NEW_INDICES.
Bug #18822.
Eric Anholt [Wed, 3 Dec 2008 19:30:58 +0000 (11:30 -0800)]
i965: Fix stray character that the compile whined about.
Kristian Høgsberg [Tue, 2 Dec 2008 02:44:03 +0000 (21:44 -0500)]
Bump dri2proto requirement to 1.99.3, drop CopyRegion bitmask from protocol.
Dave Airlie [Fri, 28 Nov 2008 09:38:47 +0000 (19:38 +1000)]
intel: restore old vertex submit paths for i8xx hardware.
Intel docs state that only 830/845 have VBOs, 855/865 don't. So
lets just not use them on i8xx at all.
This restores the old pre-vbo code and uses it on all 8xx hw.
Brian [Tue, 2 Dec 2008 01:32:47 +0000 (18:32 -0700)]
mesa: fix conditional in save_Lightfv(), bug 18838
Eric Anholt [Fri, 28 Nov 2008 20:43:10 +0000 (12:43 -0800)]
i965: Add a new state flag BRW_NEW_NR_SURFACES instead of CACHE_NEW_SURFACE
The CACHE_NEW_SURFACE bit always gets spammed since we get many different
surface BOs per state emit, but the only consumer of it wanted to just know
how many surfaces were enabled.
Eric Anholt [Fri, 28 Nov 2008 20:16:51 +0000 (12:16 -0800)]
i965: Fix clashing enums for BRW_NEW_INDICES/VERTICES versus BATCH/DEPTH_BUFFER.
Fixes upload of large amounts of state for every new primitive emit.
Eric Anholt [Fri, 28 Nov 2008 19:58:00 +0000 (11:58 -0800)]
i965: Remove BRW_WM_LOCK dirty bit, introduced to work around lack of relocs.
This was causing a prepare of wm state at every primitive emit.
Eric Anholt [Thu, 27 Nov 2008 20:26:00 +0000 (12:26 -0800)]
i965: Add debug code for dumping how frequently different dirty bits are set.
Eric Anholt [Thu, 27 Nov 2008 04:42:59 +0000 (20:42 -0800)]
i915: Remove dead early z enable bit which was always on.
Eric Anholt [Thu, 27 Nov 2008 03:22:37 +0000 (19:22 -0800)]
i965: Reduce fast-pathiness of brw_try_draw_prims, bringing in important checks.
Later primitives, even if they caused a full state validate, wouldn't check
that there was enough space in the batchbuffer, occasionally triggering the
sanity check. We also skipped the aperture space check, even if it would
mean bringing in new programs and associated state.
Brian Paul [Fri, 28 Nov 2008 23:17:38 +0000 (16:17 -0700)]
mesa: add missing break statements
Brian Paul [Fri, 28 Nov 2008 21:08:04 +0000 (14:08 -0700)]
mesa: enable texture compression extensions for software drivers when possible
Phillip Klaus Krause [Fri, 28 Nov 2008 20:54:08 +0000 (13:54 -0700)]
mesa: remove unneeded compressed texure size checks
Brian Paul [Fri, 28 Nov 2008 20:50:41 +0000 (13:50 -0700)]
mesa: fix default switch case in append_token(), see bug 18734
Brian Paul [Thu, 27 Nov 2008 18:01:30 +0000 (11:01 -0700)]
mesa: remove an assertion (see bug 18734)
RALOVICH, Kristóf [Thu, 27 Nov 2008 11:53:43 +0000 (12:53 +0100)]
Revert "glx: xcbified visual and FBConfig choosing"
This reverts commit
62688f11355cfa865d420755aa159875b425cc9b.
RALOVICH, Kristóf [Thu, 27 Nov 2008 11:53:19 +0000 (12:53 +0100)]
Revert "glx: revert using nonexsisten XCB version of glXGetFBConfigsSGIX"
This reverts commit
53698765019e50172be25a4ff48c83d54f0e7981.
RALOVICH, Kristóf [Sat, 8 Nov 2008 17:18:26 +0000 (18:18 +0100)]
glx: revert using nonexsisten XCB version of glXGetFBConfigsSGIX
This uses a GLX VendorPrivate request. VendorPrivates are real GLX API
calls but use the same protocol request. XCB does not currently
support specific VendorPrivetes directly. See eg.:
http://lists.freedesktop.org/archives/xcb/2008-November/004036.html
for more information.
RALOVICH, Kristóf [Sat, 8 Nov 2008 16:58:55 +0000 (17:58 +0100)]
glx: remove XCB debug leftover
RALOVICH, Kristóf [Tue, 4 Nov 2008 16:30:21 +0000 (17:30 +0100)]
glx: xcbified glXSwapBuffers
RALOVICH, Kristóf [Tue, 4 Nov 2008 16:17:18 +0000 (17:17 +0100)]
glx: xcbified visual and FBConfig choosing
RALOVICH, Kristóf [Tue, 4 Nov 2008 11:41:55 +0000 (12:41 +0100)]
glx: xcbified __glXClientInfo
RALOVICH, Kristóf [Tue, 4 Nov 2008 10:53:32 +0000 (11:53 +0100)]
configure.ac: advertise XCB
RALOVICH, Kristóf [Tue, 4 Nov 2008 10:31:53 +0000 (11:31 +0100)]
glx: no graphics context during initialization
RALOVICH, Kristóf [Tue, 4 Nov 2008 09:59:39 +0000 (10:59 +0100)]
glx: xcbified __glXIsDirect
RALOVICH, Kristóf [Tue, 4 Nov 2008 09:43:06 +0000 (10:43 +0100)]
glx: missing static on local function
RALOVICH, Kristóf [Mon, 3 Nov 2008 17:32:35 +0000 (18:32 +0100)]
glx: use __glXGetString
RALOVICH, Kristóf [Mon, 3 Nov 2008 17:32:20 +0000 (18:32 +0100)]
glx: use __glXQueryServerString
RALOVICH, Kristóf [Mon, 3 Nov 2008 17:31:22 +0000 (18:31 +0100)]
glx: implement __glXGetString, hide __glXGetStringFromServer
RALOVICH, Kristóf [Sat, 18 Oct 2008 15:00:13 +0000 (17:00 +0200)]
glx: implement QueryVersion using XCB
RALOVICH, Kristóf [Sat, 18 Oct 2008 14:53:08 +0000 (16:53 +0200)]
glx: implement __glXQueryServerString using XCB
Thomas Henn [Wed, 26 Nov 2008 16:51:29 +0000 (09:51 -0700)]
windows: fix visual object memleak
Thomas Henn [Wed, 26 Nov 2008 16:49:32 +0000 (09:49 -0700)]
windows: fix _mesa_unreference_framebuffer() to pass ** type.
Brian Paul [Wed, 26 Nov 2008 16:35:26 +0000 (09:35 -0700)]
mesa: add missing type check for function calls
Brian Paul [Wed, 26 Nov 2008 16:35:08 +0000 (09:35 -0700)]
mesa: add missing size check for assignment optimization
Brian Paul [Wed, 26 Nov 2008 16:02:37 +0000 (09:02 -0700)]
mesa: remove debug code
Brian Paul [Wed, 26 Nov 2008 16:00:44 +0000 (09:00 -0700)]
demos: press SPACE to toggle fbo_firecube animation
Brian Paul [Wed, 26 Nov 2008 14:21:12 +0000 (07:21 -0700)]
mesa: add some missing switch cases for generating state var strings
Daniel Zimmermann [Wed, 26 Nov 2008 10:48:53 +0000 (11:48 +0100)]
fix possible memory leak in bezierPatchMeshMake
Brian Paul [Tue, 25 Nov 2008 00:18:56 +0000 (17:18 -0700)]
mesa: added support for GLSL 1.20 array.length() method
This is the only method supported in GLSL 1.20 so we take a few short-cuts.
Brian Paul [Mon, 24 Nov 2008 22:28:21 +0000 (15:28 -0700)]
mesa: support for GLSL 1.20 array types
This allows syntax like "float[8] foo, bar;"
Brian Paul [Mon, 24 Nov 2008 20:04:04 +0000 (13:04 -0700)]
mesa: add gl_program::Input/OutputFlags[] array
These arrays will indicate per-input or per-output options for vertex/fragment
programs such as centroid-sampling and invariance.
Bernd Buschinski [Mon, 24 Nov 2008 19:39:07 +0000 (11:39 -0800)]
glx: Add missing include for XCB, fixing crash on 64-bit.
Bug #18689
Brian Paul [Mon, 24 Nov 2008 18:10:58 +0000 (11:10 -0700)]
windows: replace free() with _mesa_unreference_framebuffer()
Fixes invalid memory reference bug when exiting.
Brian Paul [Mon, 24 Nov 2008 16:28:25 +0000 (09:28 -0700)]
mesa: copy centroid/invariance/precision info in parse_init_declarator()
Brian Paul [Mon, 24 Nov 2008 16:25:05 +0000 (09:25 -0700)]
mesa: check that varying variable qualifiers agree
Brian Paul [Mon, 24 Nov 2008 16:13:14 +0000 (09:13 -0700)]
mesa: copy precision/variant/centroid info in slang_fully_specified_type_copy()
Brian Paul [Mon, 24 Nov 2008 16:05:49 +0000 (09:05 -0700)]
mesa: set flags for varying vars
Brian Paul [Mon, 24 Nov 2008 16:04:52 +0000 (09:04 -0700)]
mesa: rename program parameter flags to match other Mesa conventions
Brian Paul [Mon, 24 Nov 2008 16:04:11 +0000 (09:04 -0700)]
mesa: copy Flags in _mesa_clone_parameter_list()
Brian Paul [Mon, 24 Nov 2008 16:03:47 +0000 (09:03 -0700)]
mesa: dump/debug varying vars list
Brian Paul [Mon, 24 Nov 2008 15:43:38 +0000 (08:43 -0700)]
mesa: added PROG_PARAM_ bits for invariant, flat/linear interpolation
Plus, update the print/debug code.
Brian Paul [Mon, 24 Nov 2008 15:33:49 +0000 (08:33 -0700)]
mesa: add Flags field to gl_program_parameter
Only one flag defined so far: PROG_PARAM_CENTROID_BIT
Brian Paul [Mon, 24 Nov 2008 15:14:28 +0000 (08:14 -0700)]
docs: update webmaster email addr
Brian Paul [Sat, 22 Nov 2008 00:22:16 +0000 (17:22 -0700)]
mesa: issue error, don't crash, when calling a prototyped, but undefined function
Bug #18659.
Brian Paul [Fri, 21 Nov 2008 21:24:28 +0000 (14:24 -0700)]
mesa: better variable name: s/aux/store/
Brian Paul [Fri, 21 Nov 2008 17:03:19 +0000 (10:03 -0700)]
added progs/demos/fragcoord.c - tests gl_FragCoord attribute in fragment shader
Fragment's red/greenb/blue is a function gl_FragCoord.xyz
Eric Anholt [Fri, 21 Nov 2008 09:09:47 +0000 (17:09 +0800)]
i965: Add support for accelerated CopyTexSubImage.
There were hacks in EmitCopyBlit before to adjust offsets so that y=0 after
the offsets had been adjusted for a negative pitch. It appears that those
hacks were due to an unclear and surprising aspect of the hardware: inverting
the pitch results in the blit into the specified rectangle being inverted,
without the user needing to adjust y and base offset.
Tested with piglit copytexsubimage test on 915GM and GM965. Should fix
serious performance issues with ETQW and other applications.