Chia-I Wu [Fri, 6 Nov 2009 09:11:43 +0000 (17:11 +0800)]
gallium: Allow state trackers to install files.
State trackers like es or vega need to install their libraries.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 30 Oct 2009 06:09:09 +0000 (14:09 +0800)]
mesa/main: linear_to_nonlinear is not always available.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 6 Nov 2009 07:17:15 +0000 (15:17 +0800)]
mesa/es: Improve support for parallel execution of make.
Running make with -j for the first time might fail because glapi headers
haven't been generated. This commit should make it more reliable.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 6 Nov 2009 08:49:04 +0000 (16:49 +0800)]
mesa/es: Fix symbol conflicts and warnings.
drawtex.c was listed in LOCAL_ES1_SOURCES twice. My mistake when
merging the patches.
Also, run gl_apitemp.py with -c to silence warnings and add target
"install".
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 3 Sep 2009 03:05:06 +0000 (11:05 +0800)]
glapi: Add OpenGL ES compatibility mode to scripts.
When the mode is on, the scripts would generate headers that are
suitable for OpenGL ES. There are two differences. One is that they
will generate function prototypes for OpenGL ES specific functions. The
other is that, when a function has multiple names, SET/GET/CALL macros
would be generated for each of names.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 2 Oct 2009 07:33:55 +0000 (15:33 +0800)]
progs/es: OpenGL ES 1.x and 2.X demo programs.
The demo programs are written by Brian Paul, and cherry-picked from
opengl-es branch. Several minor issues such as a linking problem are
fixed.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 3 Sep 2009 03:31:17 +0000 (11:31 +0800)]
st/es: Add OpenGL ES state trackers.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Tue, 22 Sep 2009 07:00:24 +0000 (15:00 +0800)]
mesa/es: Add support for GL_OES_draw_texture.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 21 Sep 2009 09:57:57 +0000 (17:57 +0800)]
mesa/es: Add OpenGL ES overlay.
This is primitive support for OpenGL ES. It uses a subset of mesa
sources to build libesXgallium.a and libesXapi.a, where X is 1 for
OpenGL ES 1.x, 2 for OpenGL ES 2.x. The static libraries serve the same
purpose as libmesagallium.a and libglapi.a do for OpenGL.
This is based on the work of opengl-es branch.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Wed, 2 Sep 2009 04:04:56 +0000 (12:04 +0800)]
mesa/es: Add OpenGL ES XMLs.
These XMLs define OpenGL ES 1.x and 2.x APIs.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Tue, 20 Oct 2009 04:39:56 +0000 (12:39 +0800)]
mesa/main: Make _mesa_TexGenf and _mesa_GetTexGenfv global again.
They are needed by OpenGL ES overlay.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 3 Sep 2009 03:03:20 +0000 (11:03 +0800)]
glapi: Include headers with directory prefixes.
This allows different sets of generated sources and headers to be used.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Tue, 20 Oct 2009 06:15:45 +0000 (14:15 +0800)]
glapi: Avoid hardcoded category names in remap helper script.
The output of the script is unchanged.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Tue, 20 Oct 2009 06:32:39 +0000 (14:32 +0800)]
glapi: Add is_abi() to test if a function is in the ABI.
The test is done by checking if the offset is manually assigned. The
generated headers are unchanged.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 21 Sep 2009 10:46:28 +0000 (18:46 +0800)]
mesa/main: Add more OpenGL ES types to glheader.h.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 7 Sep 2009 06:46:22 +0000 (14:46 +0800)]
mesa/main: Add support for point size array in _mesa_GetPointerv.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 15 Oct 2009 10:25:24 +0000 (18:25 +0800)]
gallium/xlib: Fix missing symbols when GLX_INDIRECT_RENDERING is defined.
When GLX_INDIRECT_RENDERING is defined, some symbols are used in
libglapi.a but are not defined. Define them through the help of
glapitemp.h.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 15 Oct 2009 10:07:22 +0000 (18:07 +0800)]
mesa/xlib: Fix missing symbols when GLX_INDIRECT_RENDERING is defined.
When GLX_INDIRECT_RENDERING is defined, some symbols are used in
libglapi.a but are not defined. Define them through the help of
glapitemp.h.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Sun, 25 Oct 2009 15:24:18 +0000 (23:24 +0800)]
glapi: Allow normal entry points to be skipped.
Reorganize glapitemp.h such that it is possible to skip normal entry
points or protocol entry points by defining
_GLAPI_SKIP_NORMAL_ENTRY_POINTS or _GLAPI_SKIP_PROTO_ENTRY_POINTS.
Protocol entry points are those with different GLX protocols. They are
skipped in libglapi.a when GLX_INDIRECT_RENDERING is defined.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Brian Paul [Thu, 5 Nov 2009 20:16:19 +0000 (13:16 -0700)]
mesa: fix infinite loop bug in _mesa_drawbuffers()
Fixes bug 24946.
This regression came from
8df699b3bb1aa05b633f05b121d09d812c86a22d.
José Fonseca [Thu, 5 Nov 2009 17:05:20 +0000 (17:05 +0000)]
softpipe: Implement PIPE_BLENDFACTOR_SRC_ALPHA_SATURATE for destination.
It is a valid and tested combination on D3D9.
Cooper Yuan [Thu, 5 Nov 2009 08:06:01 +0000 (16:06 +0800)]
g3dvl: remove a debug line
Cooper Yuan [Thu, 5 Nov 2009 07:59:27 +0000 (15:59 +0800)]
g3dvl: add scissor setting
Marek Olšák [Wed, 4 Nov 2009 09:56:44 +0000 (10:56 +0100)]
r300g: add polygon mode
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Marek Olšák [Tue, 3 Nov 2009 15:58:39 +0000 (16:58 +0100)]
r300g: fix the size of CS when emitting the fragprog constant buffer
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Marek Olšák [Tue, 3 Nov 2009 15:50:09 +0000 (16:50 +0100)]
r300g: set the correct offset in a colorbuffer surface
Suggested by Joakim Sindholt.
Also, put flushing of colorbuffers _before_ the framebuffer state setup,
suggested by docs.
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Marek Olšák [Tue, 3 Nov 2009 15:48:48 +0000 (16:48 +0100)]
r300g: add color channel masking
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Brian Paul [Thu, 5 Nov 2009 00:57:20 +0000 (17:57 -0700)]
Merge branch 'mesa_7_6_branch'
Conflicts:
src/mesa/drivers/windows/gdi/mesa.def
Brian Paul [Thu, 5 Nov 2009 00:51:21 +0000 (17:51 -0700)]
vbo: fix out-of-bounds array access
The exec->vtx.inputs[] array was being written past its end. This was
clobbering the following vbo_exec_context::eval state. Probably not noticed
since evaluators and immediate mode rendering don't happen at the same time.
Fixed the loop in vbo_exec_vtx_init().
Changed the size of the vbo_exec_context::vtx.arrays[] array.
Added a bunch of debug-build assertions.
Issue found by Vinson Lee.
Brian Paul [Thu, 5 Nov 2009 00:42:30 +0000 (17:42 -0700)]
mesa: fix broken pack_histogram() case for GLhalf
Brian Paul [Thu, 5 Nov 2009 00:42:01 +0000 (17:42 -0700)]
mesa: silence warning from gcc 4.4.1
Brian Paul [Thu, 5 Nov 2009 00:26:48 +0000 (17:26 -0700)]
ARB prog parser: include variable name in error text
Zack Rusin [Wed, 4 Nov 2009 23:08:44 +0000 (18:08 -0500)]
st/xorg: these flushes shouldn't be necessary
performance optimization
Vinson Lee [Wed, 4 Nov 2009 22:55:39 +0000 (15:55 -0700)]
progs/tests: Fix MSVC build.
Signed-off-by: Brian Paul <brianp@vmware.com>
Alex Deucher [Wed, 4 Nov 2009 21:59:13 +0000 (16:59 -0500)]
r600: rework draw functions
Seems INDX_OFFSET doesn't work properly on some cards,
so change back to immediate mode indices. Seems to only
affect DRI1. Needs more investigation.
Rework and clean up the draw functions.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Alex Deucher [Wed, 4 Nov 2009 19:43:24 +0000 (14:43 -0500)]
r600: fix count prediction for IB case
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Alan Hourihane [Wed, 4 Nov 2009 14:48:25 +0000 (14:48 +0000)]
Fix YTILE spantmp functions
Alan Hourihane [Wed, 4 Nov 2009 14:48:25 +0000 (14:48 +0000)]
Fix YTILE spantmp functions
Vinson Lee [Wed, 4 Nov 2009 14:14:55 +0000 (07:14 -0700)]
glslcompiler: Fix Mac OS build.
Signed-off-by: Brian Paul <brianp@vmware.com>
José Fonseca [Tue, 3 Nov 2009 19:47:51 +0000 (19:47 +0000)]
util: Remove homegrown Windows KM profiler.
It's not sampling based so its results are biased towards functions called
many times.
Michal Krol [Wed, 4 Nov 2009 11:47:10 +0000 (11:47 +0000)]
tgsi/ureg: Allow for multiple extended instruction tokens.
For example, we would like to have a predicate and texture token
in one instruction to do predicated texture sampling.
Christoph Bumiller [Tue, 3 Nov 2009 22:30:18 +0000 (23:30 +0100)]
nv50: fix shader emit_tex for cube textures
Christoph Bumiller [Tue, 3 Nov 2009 21:09:32 +0000 (22:09 +0100)]
nv50: add abs-modifier for emit_minmax
Christoph Bumiller [Tue, 3 Nov 2009 22:19:56 +0000 (23:19 +0100)]
nv50: add 3d texture tiling and mip-mapping
Mip-mapped 3D textures are not arrays of 2D layers
with a mip-map layout like 2D textures, therefore we
cannot use image_nr == depth for them.
Making use of "volume tiling" modes now, the allowed
modes are 0xZY where Z <= 5 and y <= 5.
Brian Paul [Tue, 3 Nov 2009 23:13:22 +0000 (16:13 -0700)]
mesa: (GLint64) casts in get.c to silence Visual Studio warnings
Revised version of a patch from Karl Schultz.
Brian Paul [Tue, 3 Nov 2009 23:12:02 +0000 (16:12 -0700)]
docs: fix 7.6 build with Visual Studio
Karl Schultz [Tue, 3 Nov 2009 23:09:26 +0000 (16:09 -0700)]
windows: updated VC8 project file
Signed-off-by: Brian Paul <brianp@vmware.com>
Karl Schultz [Tue, 3 Nov 2009 23:07:01 +0000 (16:07 -0700)]
windows: remove old entrypoints from mesa.def file
Signed-off-by: Brian Paul <brianp@vmware.com>
Karl Schultz [Tue, 3 Nov 2009 23:05:12 +0000 (16:05 -0700)]
mesa: added GLAPIENTRY keywords for sync object functions
Signed-off-by: Brian Paul <brianp@vmware.com>
Vinson Lee [Tue, 3 Nov 2009 21:41:08 +0000 (14:41 -0700)]
progs/util: Fix memory leak if fail to load/compile shader
Signed-off-by: Brian Paul <brianp@vmware.com>
Michal Krol [Fri, 30 Oct 2009 08:27:17 +0000 (08:27 +0000)]
llvmpipe: Sanitise shader semantic and interpolator handling.
Handle the remaining semantic names and indices.
Respect color interpolator when not flatshading.
Based on Michal's softpipe commit
eb699d64ec7057032139baccedcb0694ca41d706.
Keith Whitwell [Sun, 23 Aug 2009 10:22:41 +0000 (11:22 +0100)]
llvmpipe: remove old prim_setup draw stage
Everything now goes through the draw_vbuf handler, the same as
regular drivers.
Based on Keith's commit
4fe0fc3eba1f79beda890a5016359d549bab6ad4.
José Fonseca [Tue, 3 Nov 2009 13:10:58 +0000 (13:10 +0000)]
llvmpipe: Respect gl_rasterization_rules in primitive setup.
Based on Michal's identical commit for softpipe
(
ca9c413647bf9efb5ed770e3a655bc758075aec7).
José Fonseca [Mon, 2 Nov 2009 09:47:47 +0000 (09:47 +0000)]
python/retrace: Cope with null constant buffers.
José Fonseca [Mon, 2 Nov 2009 09:47:24 +0000 (09:47 +0000)]
python/retrace: Add missing colon.
Brian Paul [Tue, 3 Nov 2009 17:01:10 +0000 (10:01 -0700)]
progs/tests: debug code for getting texture component sizes
Michal Krol [Tue, 3 Nov 2009 09:55:28 +0000 (09:55 +0000)]
tgsi: Up tgsi_exec's control flow nesting to 32.
Brian Paul [Tue, 3 Nov 2009 16:54:09 +0000 (09:54 -0700)]
Merge branch 'mesa_7_6_branch'
Brian Paul [Mon, 2 Nov 2009 22:39:39 +0000 (15:39 -0700)]
mesa: clean-up, remove some flushing in FBO functions
Remove some unneeded flushes.
Replace FLUSH_CURRENT w/ FLUSH_VERTICES in other places.
Brian Paul [Mon, 2 Nov 2009 22:30:51 +0000 (15:30 -0700)]
mesa: fix indentation
Brian Paul [Mon, 2 Nov 2009 22:29:54 +0000 (15:29 -0700)]
mesa: clean-up formatting
Brian Paul [Mon, 2 Nov 2009 22:29:03 +0000 (15:29 -0700)]
mesa: avoid extraneous _NEW_BUFFER changes in _mesa_BindFramebufferEXT()
Brian Paul [Mon, 2 Nov 2009 22:27:57 +0000 (15:27 -0700)]
mesa: use FLUSH_VERTICES() in _mesa_drawbuffers()
Brian Paul [Mon, 2 Nov 2009 21:41:17 +0000 (14:41 -0700)]
mesa: avoid extraneous _NEW_BUFFER state in _mesa_drawbuffers()
Brian Paul [Mon, 2 Nov 2009 20:20:19 +0000 (13:20 -0700)]
mesa: use ffs() to shorten loop in _mesa_drawbuffers()
Brian Paul [Mon, 2 Nov 2009 19:58:51 +0000 (12:58 -0700)]
mesa: added assertion, another comment
Brian Paul [Mon, 2 Nov 2009 19:40:04 +0000 (12:40 -0700)]
intel: avoid unnecessary front buffer flushing/updating
Before, if we just called glXMakeCurrent() and didn't render anything we'd
still trigger a flushFrontBuffer() call.
Now only set the intel->front_buffer_dirty field at state validation time
just before we draw something.
NOTE: additional calls to intel_check_front_buffer_rendering() might be
needed if I missed some rendering paths.
Marek Olšák [Tue, 3 Nov 2009 15:16:05 +0000 (16:16 +0100)]
st/mesa: clip pixels in draw_stencil_pixels to avoid crash
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Tue, 3 Nov 2009 16:30:20 +0000 (09:30 -0700)]
st/mesa: don't use util_blit_pixels_writemask() for depth or depth/stencil
util_blit_pixels_writemask() only works for color formats at this time.
Also, it might never work for depth/stencil surfaces since we can't get
handle stencil values in a fragment shader.
Fixes glCopyTexSubImage(GL_DEPTH_COMPONENT).
Brian Paul [Tue, 3 Nov 2009 16:26:32 +0000 (09:26 -0700)]
st/mesa: fix tests for depth and depth/stencil texture formats
Brian Paul [Sat, 31 Oct 2009 14:08:19 +0000 (08:08 -0600)]
mesa: added comment
Brian Paul [Sat, 31 Oct 2009 14:08:05 +0000 (08:08 -0600)]
mesa: use _mesa_get_current_tex_object()
Brian Paul [Sat, 31 Oct 2009 14:07:46 +0000 (08:07 -0600)]
mesa: use _mesa_get_current_tex_object()
Brian Paul [Sat, 31 Oct 2009 14:07:23 +0000 (08:07 -0600)]
mesa: make _mesa_get_current_tex_objec() public
Ian Romanick [Mon, 2 Nov 2009 20:44:14 +0000 (12:44 -0800)]
ARB prog parser: Fix a couple issues with previous merge from mesa_7_6_branch
Since the addition of support for Nvidia condition codes, the lexer internally
uses handle_ident to select between returning IDENTIFIER and USED_IDENTIFIER.
Also, use return_string instead of strdup.
Fixes bug #24809.
Vinson Lee [Mon, 2 Nov 2009 19:35:47 +0000 (12:35 -0700)]
glx: Fix memory leak if XF86DRICreateDrawable() fails
Signed-off-by: Brian Paul <brianp@vmware.com>
Pierre Ossman [Sun, 1 Nov 2009 21:28:02 +0000 (22:28 +0100)]
r600: implement LOG op in compiler
Pierre Ossman [Sun, 1 Nov 2009 20:38:48 +0000 (21:38 +0100)]
r600: implement EXP op in compiler
Michal Krol [Mon, 2 Nov 2009 14:59:52 +0000 (14:59 +0000)]
tgsi/ureg: Add negate and swizzle for predicates.
Brian Paul [Mon, 2 Nov 2009 13:52:05 +0000 (06:52 -0700)]
mesa: fix incorrect approx bits/channel for fxt1 formats
See bug 24806.
Brian Paul [Mon, 2 Nov 2009 13:51:47 +0000 (06:51 -0700)]
gallium/util: add casts to silence warnings
Michal Krol [Mon, 2 Nov 2009 09:42:28 +0000 (09:42 +0000)]
tgsi/ureg: Update for gallium interface changes.
Michal Krol [Mon, 2 Nov 2009 09:41:40 +0000 (09:41 +0000)]
tgsi: Update for gallium interface changes.
Michal Krol [Sat, 31 Oct 2009 09:09:26 +0000 (09:09 +0000)]
gallium: Cleanup predicate and condition code TGSI tokens.
There is little point in having a special TGSI token just to handle
predicate register updates. Remove tgsi_dst_register_ext_predicate token
and instead use a new PREDICATE register file to update predicates.
Actually, the contents of the obsolete token are being moved
to tgsi_instruction_ext_predicate, where they should be
from the very beginning.
Remove the NVIDIA-specific condition code tokens -- nobody uses them
and they can be emulated with predicates if needed.
Introduce PIPE_CAP_SM3 that indicates whether a driver supports
SM3-level instructions, and in particular predicates.
Add PIPE_CAP_MAX_PREDICATE_REGISTERS that can be used to query the driver
how many predicate registers it supports (currently it would be 1).
Michal Krol [Fri, 30 Oct 2009 08:27:17 +0000 (08:27 +0000)]
softpipe: Sanitise shader semantic and interpolator handling.
Handle the remaining semantic names and indices.
Respect color interpolator when not flatshading.
Younes Manton [Sun, 1 Nov 2009 23:25:59 +0000 (18:25 -0500)]
nouveau: Assume all texture blankets are linear for now.
Corbin Simpson [Sun, 1 Nov 2009 19:54:52 +0000 (11:54 -0800)]
r300g: Miscellania. Avoid draw segfaults, s/true/TRUE/, etc.
Cleared out my git stash.
Maciej Cencora [Sun, 1 Nov 2009 17:50:52 +0000 (18:50 +0100)]
r300g: fix geometry corruptions
PVS flush is needed before changing the vertex shader or vertex shader constants.
Maciej Cencora [Wed, 21 Oct 2009 19:17:43 +0000 (21:17 +0200)]
r300g: split constant buffer and shader emittion
Corbin Simpson [Sun, 1 Nov 2009 17:24:02 +0000 (09:24 -0800)]
r300g: Adopt osiris' PSC data and swizzle.
A fair amount more flexible and easier to maintain.
Christoph Bumiller [Sun, 1 Nov 2009 13:15:30 +0000 (14:15 +0100)]
nv50: handle TGSI_SEMANTIC_FACE
Christoph Bumiller [Sun, 1 Nov 2009 13:04:54 +0000 (14:04 +0100)]
nv50: make IF condition safe
Don't assume that a SET that writes to IF's argument
directly precedes the IF.
Christoph Bumiller [Sun, 1 Nov 2009 13:27:35 +0000 (14:27 +0100)]
nv50: implement TGSI_OPCODE_AND/OR/XOR
Will use AND for gl_FrontFacing, the face input
is either 0 or 0xffffffff.
Christoph Bumiller [Sat, 31 Oct 2009 19:46:59 +0000 (20:46 +0100)]
nv50: fix textures with block size != cpp
First, using width * block size as pitch is evidently
wrong if a block contains more than 1 texel.
For tiled textures, since a block occupies a contiguous
area of memory, y addressing in m2mf has to be done by
block index, not the y coordinate itself.
This should fix compressed textures.
Younes Manton [Sat, 24 Oct 2009 21:36:48 +0000 (17:36 -0400)]
nouveau: Support X8R8G8B8 textures on nv30, nv40 and RTs on nv10-nv40.
Christoph Bumiller [Sat, 31 Oct 2009 12:38:22 +0000 (13:38 +0100)]
nv50: use SIFC also for shader upload
Adds a more generic SIFC transfer function.
Christoph Bumiller [Sat, 31 Oct 2009 10:25:48 +0000 (11:25 +0100)]
nv50: make MRTs work
We have to indicate to the hw whether the FP exports
multiple colour results.
Method 0x121c is used to specify the number of RTs.
Also deactivate zeta explicitly if there's no zsbuf.
Dave Airlie [Sat, 31 Oct 2009 11:23:37 +0000 (21:23 +1000)]
radeon: add missing include
Marek Olšák [Sat, 31 Oct 2009 06:23:00 +0000 (07:23 +0100)]
r300g: correct the pitch calculation for smaller mipmaps
Marek Olšák [Sat, 31 Oct 2009 04:38:25 +0000 (05:38 +0100)]
r300g: pretend NPOT support
It's requires to get GL2.1, therefore, much more piglit tests can be used
for testing. Figure out later how to emulate this.