Chia-I Wu [Sun, 27 Sep 2009 08:14:36 +0000 (16:14 +0800)]
egl: Add a function to convert __GLcontextModes to _EGLConfig.
_eglConfigFromContextModesRec is used to convert a __GLcontextModes to a
_EGLConfig. Note that the config is not validated. An invalid mode
is likely to give an invalid config.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 25 Sep 2009 15:43:49 +0000 (23:43 +0800)]
egl: Rework config lookup.
Make it similiar to how contexts and surfaces are looked up. It should
be slightly faster, and work better with multiple displays.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 25 Sep 2009 15:24:03 +0000 (23:24 +0800)]
egl: Rework configuration management.
This mainly implements the algorithms for configuration selection and
sorting, described in the spec. User errors should also be correctly
detected and reported.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 25 Sep 2009 14:54:34 +0000 (22:54 +0800)]
egl: Introduce config keys.
Config keys are almost config attributes. A valid config attribute is a
valid config key, but a valid config key may not be a valid config
attribute.
This commit does not distinguish the differences.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
José Fonseca [Tue, 29 Sep 2009 12:58:58 +0000 (13:58 +0100)]
llvmpipe: Emit SSE intrinsics based on runtime cpu capability check.
Note that llvmpipe still doesn't run on any processor yet: if you don't
have a recent processor with SSE4.1 you will still likely end up
hitting a code path for which a generic non-sse4 version is not
implemented yet.
José Fonseca [Tue, 29 Sep 2009 12:25:08 +0000 (13:25 +0100)]
util: Cleanup u_cpu_detect, build. Support X86_64 and detect SSE4.1 too.
I was waiting for the need to use this code to arise, and it finally came.
I've tested building this on Linux and Windows, both x86 and x64_64. But
it might break other platforms. Please bear with me and help me fix it.
Many thanks to Dennis Smit who submitted this, and Eric Anholt whose
work this was based on.
José Fonseca [Tue, 29 Sep 2009 12:17:36 +0000 (13:17 +0100)]
gallium: New PIPE_OS_UNIX to simplify code that is portable to all unices.
Vinson Lee [Tue, 29 Sep 2009 09:38:47 +0000 (10:38 +0100)]
i915: Fix MSVC build.
José Fonseca [Mon, 28 Sep 2009 18:44:30 +0000 (19:44 +0100)]
python: Update for surface_buffer_create change.
José Fonseca [Mon, 28 Sep 2009 18:02:34 +0000 (19:02 +0100)]
g3dvl: assert.h -> util/u_debug.h
José Fonseca [Mon, 28 Sep 2009 18:01:49 +0000 (19:01 +0100)]
g3dvl: Define PIPE_VIDEO_CODEC_UNKNOWN for failures.
gcc 4.4 seems particularly picky with int -> enum conversions.
Andre Maasikas [Mon, 28 Sep 2009 08:23:49 +0000 (11:23 +0300)]
r600: use CB_TARGET_MASK instead of CB_SHADER_MASK for setting color mask
makes blend functions work better
Signed-off-by: Dave Airlie <airlied@linux.ie>
Andre Maasikas [Mon, 28 Sep 2009 07:42:35 +0000 (10:42 +0300)]
r600: user correct alpha blend factor
Signed-off-by: Dave Airlie <airlied@linux.ie>
Andre Maasikas [Tue, 29 Sep 2009 06:46:29 +0000 (09:46 +0300)]
r600: clear position enable bit when when wpos is not used by FP
Makes doom3 alot nicer..
Jakob Bornecrantz [Mon, 28 Sep 2009 18:19:26 +0000 (11:19 -0700)]
st/xorg: Add debug for fallbacks
Jakob Bornecrantz [Sun, 27 Sep 2009 21:03:24 +0000 (14:03 -0700)]
st/xorg: Make debug printing optional
Eric Anholt [Mon, 28 Sep 2009 21:03:40 +0000 (14:03 -0700)]
meta: Fix invalid PBO access from DrawPixels when trying to just alloc.
This whole reuse of buffers (TexSubImage instead of TexImage, SubData
instead of Data) is bad for hardware drivers, but it's even worse when
we accidentally try to access the 2x2 PBO to fill the new 16x16 texture
we're creating, producing GL errors.
Fixes piglit pbo-drawpixels. Bug #14163.
Eric Anholt [Mon, 28 Sep 2009 18:42:31 +0000 (11:42 -0700)]
intel: Drop my generatemipmap code in favor of the new shared code.
Eric Anholt [Tue, 22 Sep 2009 00:13:31 +0000 (17:13 -0700)]
intel: Remove some dead metaops code.
Ian Romanick [Mon, 28 Sep 2009 19:03:23 +0000 (12:03 -0700)]
Merge branch 'mesa_7_6_branch'
Conflicts:
Makefile
src/mesa/main/version.h
Ian Romanick [Mon, 28 Sep 2009 19:02:39 +0000 (12:02 -0700)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Conflicts:
src/mesa/main/version.h
Ian Romanick [Mon, 28 Sep 2009 18:41:23 +0000 (11:41 -0700)]
docs: 7.5.2 md5 sums
Ian Romanick [Mon, 28 Sep 2009 18:33:52 +0000 (11:33 -0700)]
Prep for 7.5.2 release
Ian Romanick [Mon, 28 Sep 2009 18:29:25 +0000 (11:29 -0700)]
docs: 7.6 md5 sums
Ian Romanick [Mon, 28 Sep 2009 18:22:54 +0000 (11:22 -0700)]
Prep for 7.6 release
Brian Paul [Mon, 28 Sep 2009 16:03:58 +0000 (10:03 -0600)]
st/mesa: check gl_texture_object::GenerateMipmap field when allocating texmem
In guess_and_alloc_texture() use the gl_texture_object::GenerateMipmap
field as another hint as to whether to allocate space for a whole mipmap.
Brian Paul [Mon, 28 Sep 2009 16:02:20 +0000 (10:02 -0600)]
Merge branch 'mesa_7_6_branch'
Brian Paul [Mon, 28 Sep 2009 15:59:59 +0000 (09:59 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Robert Noland [Tue, 22 Sep 2009 18:49:57 +0000 (11:49 -0700)]
Fix build on non GLIBC platforms (FreeBSD at least)
Build was broken by commit
9666529b5a5be1fcde82caadc2fe2efa5ea81e49
I'm not certain that this is entirely the correct fix since the demo
from bug #23774 seemed to work before the commit that broke the build.
Signed-off-by: Robert Noland <rnoland@2hip.net>
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Mon, 28 Sep 2009 15:43:42 +0000 (09:43 -0600)]
docs: list additional 7.5.2 bug fixes
Brian Paul [Mon, 28 Sep 2009 15:38:50 +0000 (09:38 -0600)]
docs: document gallium mipmap generation fix
Brian Paul [Fri, 25 Sep 2009 23:24:27 +0000 (17:24 -0600)]
st/mesa: fix st_generate_mipmap() issues
The main issue is we didn't always have a gallium texture object with
enough space to store the to-be-generated mipmap levels. When that's
the case, allocate a new gallium texture and use st_texure_finalize()
to copy images from the old texture to the new one.
We also had the baseLevel parameter to st_render_mipmap() wrong.
Brian Paul [Mon, 28 Sep 2009 15:28:50 +0000 (09:28 -0600)]
st/mesa: fix/simplify st_texture_object::lastLevel calculation
Don't compute the st_texture_object::lastLevel field based on the texture
filters. Use the _MaxLevel value that core Mesa computes for us.
When called from the GenerateMipmap path, we'll use the lastLevel field
as-is.
Brian Paul [Fri, 25 Sep 2009 23:19:25 +0000 (17:19 -0600)]
gallium/util: add sanity check assertions
Brian Paul [Mon, 28 Sep 2009 15:22:33 +0000 (09:22 -0600)]
mesa: use _mesa_get_current_tex_unit() helper
Vinson Lee [Mon, 28 Sep 2009 15:03:26 +0000 (09:03 -0600)]
progs/perf: Include local headers before installed headers.
Fixes compilation errors on platforms with older installed GL headers.
Brian Paul [Fri, 25 Sep 2009 22:38:14 +0000 (16:38 -0600)]
progs/tests: print usage info upon SPACE/u
Brian Paul [Fri, 25 Sep 2009 22:37:15 +0000 (16:37 -0600)]
progs/tests: re-indent mipmap_limits.c
Younes Manton [Sun, 27 Sep 2009 14:56:42 +0000 (10:56 -0400)]
llvmpipe: Grab a ref when the fb is set.
Based on softpipe commit
a77226071f6814a53358a5d6caff685889d0e4ec.
José Fonseca [Mon, 28 Sep 2009 12:03:03 +0000 (13:03 +0100)]
softpipe: Fix MSVC build.
José Fonseca [Mon, 28 Sep 2009 12:02:42 +0000 (13:02 +0100)]
g3dvl: Fix MSVC build.
pipe/p_compiler for integer types. No declarations out of scope.
Cooper Yuan [Mon, 28 Sep 2009 09:55:38 +0000 (17:55 +0800)]
r300g: fix r300g cause GPU hang issue.
why there are two input position semantic tags is that ureg doesn't
set vs input semantic due to commit:
6d8dbd3d1ec888
so use vs input index instead of semantic name.
Younes Manton [Mon, 28 Sep 2009 04:17:33 +0000 (00:17 -0400)]
xvmc: Fail on unsupported formats, operations.
Younes Manton [Mon, 28 Sep 2009 03:54:36 +0000 (23:54 -0400)]
g3dvl: Missing semicolon.
Younes Manton [Mon, 28 Sep 2009 03:14:52 +0000 (23:14 -0400)]
g3dvl: Formatting and cleanups.
Younes Manton [Mon, 28 Sep 2009 01:54:20 +0000 (21:54 -0400)]
g3dvl: Move XvMC under the Xorg state tracker.
Younes Manton [Mon, 28 Sep 2009 00:18:02 +0000 (20:18 -0400)]
g3dvl: Implement XvMC using pipe_video_context.
Younes Manton [Sun, 27 Sep 2009 23:49:06 +0000 (19:49 -0400)]
g3dvl: pipe_video_context interface, softpipe impl, auxiliary libs
Younes Manton [Sun, 27 Sep 2009 18:40:14 +0000 (14:40 -0400)]
util: Add util_next_power_of_two() for rounding a uint up to a POT.
Maciej Cencora [Sun, 27 Sep 2009 20:30:45 +0000 (22:30 +0200)]
r300g: fix erroneous condition
Maciej Cencora [Sun, 27 Sep 2009 20:28:46 +0000 (22:28 +0200)]
r300g: don't force vertex position for HW TCL path
It could be generated by vertex shader.
Maciej Cencora [Sun, 27 Sep 2009 20:20:41 +0000 (22:20 +0200)]
r300g: add some assertions
Not sure why we are getting a shader with two inputs with position semantic, but we don't know how to handle it correctly so it's better to stop the app than lock the machine.
Maciej Cencora [Sun, 27 Sep 2009 20:18:49 +0000 (22:18 +0200)]
r300g: plug memory leak
Maciej Cencora [Sun, 27 Sep 2009 20:15:15 +0000 (22:15 +0200)]
r300g: add some debugging info
Dave Airlie [Sun, 27 Sep 2009 20:42:25 +0000 (06:42 +1000)]
r300g: fix r300 rs path
Dave Airlie [Sun, 27 Sep 2009 10:34:13 +0000 (20:34 +1000)]
r300g: rewrite RS state setup.
Not 100% sure this is correct, but its more correct than what was here previous
however it may require changes in the input routing for the frag shader.
Dave Airlie [Sun, 27 Sep 2009 10:31:55 +0000 (20:31 +1000)]
r300g: silence compiler warning
Jakob Bornecrantz [Sun, 27 Sep 2009 20:12:11 +0000 (13:12 -0700)]
i915g: Submit direct vertex buffers
Jakob Bornecrantz [Sun, 27 Sep 2009 20:11:49 +0000 (13:11 -0700)]
i915g: Fix warning
Jakob Bornecrantz [Wed, 23 Sep 2009 18:57:18 +0000 (11:57 -0700)]
i915g: Tile shared buffers as well
Jakob Bornecrantz [Wed, 23 Sep 2009 18:54:22 +0000 (11:54 -0700)]
i915g: Make sure to map tiled buffers via the gtt
Jakob Bornecrantz [Wed, 23 Sep 2009 18:53:50 +0000 (11:53 -0700)]
i915g: Use boolean
Jakob Bornecrantz [Wed, 23 Sep 2009 00:00:46 +0000 (17:00 -0700)]
i915g: Enable reuse of buffers
Jakob Bornecrantz [Wed, 23 Sep 2009 03:22:13 +0000 (20:22 -0700)]
st/egl: Remove buffer from screen
It is no longer needed since the new drm api code,
and it incorrectly checked if the buffer where there
for testing completeness when it should have checked
the texture instead.
Richard Li [Sun, 27 Sep 2009 18:47:12 +0000 (14:47 -0400)]
r600 : Enable draw_prim.
Younes Manton [Sun, 27 Sep 2009 14:56:42 +0000 (10:56 -0400)]
softpipe: Grab a ref when the fb is set.
Nasty bug when the surface is freed and another is allocated right on
top of it. The next time we set the fb state SP thinks it's the same
surface and doesn't flush, and when the flush eventually happens the
surface belongs to a completely different texture.
Jakob Bornecrantz [Sat, 26 Sep 2009 19:35:19 +0000 (12:35 -0700)]
progs/rbug: Link to math
Dave Airlie [Sat, 26 Sep 2009 09:32:46 +0000 (19:32 +1000)]
r300g: add tx depth support in register.
also enable cube/3d bits in txformat reg
Dave Airlie [Sat, 26 Sep 2009 08:38:39 +0000 (18:38 +1000)]
r300g: only pass complete texture state to hw setup function
No point passing things twice here, also allows more state
to be setup properly.
Dave Airlie [Sat, 26 Sep 2009 08:38:07 +0000 (18:38 +1000)]
r300g: add missing break in OQ emit
José Fonseca [Sat, 26 Sep 2009 08:33:32 +0000 (09:33 +0100)]
llvmpipe: Allow building with LLVM 2.6 too.
Dave Airlie [Sat, 26 Sep 2009 08:25:00 +0000 (18:25 +1000)]
r300g: report GL1.5, enable cap bits for OQ and shadow.
Its not like it works well on 1.3 so may as well reach for greater
heights.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Dave Airlie [Sat, 26 Sep 2009 08:24:34 +0000 (18:24 +1000)]
r300g: add z16 unorm texture format
Dave Airlie [Sat, 26 Sep 2009 06:39:13 +0000 (16:39 +1000)]
r300g: fix texture pitch to correct value.
pitch is pixels - 1, not bytes.
Ian Romanick [Fri, 25 Sep 2009 23:57:38 +0000 (16:57 -0700)]
Merge branch 'asm-shader-rework-2'
Conflicts:
src/mesa/shader/program_parse.tab.c
Michel Dänzer [Fri, 25 Sep 2009 18:59:44 +0000 (20:59 +0200)]
intel: Handle GL_RGB8 for glCopyTex(Sub)Image.
Avoids an unnecessary fallback.
Michel Dänzer [Fri, 25 Sep 2009 18:49:53 +0000 (20:49 +0200)]
st/xorg: Re-enable accelerated fills and copies.
These seem to work well enough now with the new code. Composite acceleration
isn't quite there yet and thus remains disabled in xorg_composite_bind_state()
for now.
Michel Dänzer [Fri, 25 Sep 2009 18:49:53 +0000 (20:49 +0200)]
st/xorg: Flush render cache if but only if a source has pending write operations.
Michel Dänzer [Fri, 25 Sep 2009 18:49:53 +0000 (20:49 +0200)]
st/xorg: Reject Composite acceleration for some cases not working yet.
Michel Dänzer [Fri, 25 Sep 2009 18:49:00 +0000 (20:49 +0200)]
st/xorg: Make sure struct is fully initialized.
gcc complained about a missing initializer.
Michel Dänzer [Fri, 25 Sep 2009 18:38:49 +0000 (20:38 +0200)]
st/xorg: Use generic semantic for Composite mask coordinates.
Michel Dänzer [Fri, 25 Sep 2009 18:38:49 +0000 (20:38 +0200)]
st/xorg: Flesh out EXA PrepareComposite hook a little.
Check that the formats are supported, and don't crash with source-only
pictures.
Michel Dänzer [Fri, 25 Sep 2009 18:38:49 +0000 (20:38 +0200)]
st/xorg: Use I8 format instead of A8 for depth 8 pixmaps.
Seems to work better for Composite acceleration.
Michel Dänzer [Fri, 25 Sep 2009 18:38:49 +0000 (20:38 +0200)]
st/xorg: Bind rasterizer state for copies.
Michel Dänzer [Fri, 25 Sep 2009 18:38:49 +0000 (20:38 +0200)]
st/xorg: Source-only pictures always have format PICT_a8r8g8b8.
See xserver/render/picture.c:createSourcePicture(). This both simplifies the
code and avoids a crash because pFormat is NULL.
Michel Dänzer [Fri, 25 Sep 2009 18:38:49 +0000 (20:38 +0200)]
st/xorg: Better checks for unsupported component alpha pictures.
Michal Krol [Fri, 25 Sep 2009 08:57:33 +0000 (10:57 +0200)]
softpipe: Grab fs output z from the correct file.
Michal Krol [Fri, 25 Sep 2009 08:48:19 +0000 (10:48 +0200)]
softpipe: Do not advertise support for L16 and YCBCR formats.
Michal Krol [Fri, 25 Sep 2009 16:51:55 +0000 (18:51 +0200)]
radeon: Fix newlines.
Brian Paul [Fri, 25 Sep 2009 15:00:19 +0000 (09:00 -0600)]
Merge branch 'mesa_7_6_branch'
Conflicts:
src/mesa/drivers/dri/intel/intel_clear.c
Vinson Lee [Fri, 25 Sep 2009 14:51:57 +0000 (08:51 -0600)]
mesa: move declaration before code
Christoph Bumiller [Fri, 25 Sep 2009 08:53:01 +0000 (10:53 +0200)]
nv50: fix TEX for WriteMask not equal 0xf
If you e.g. only need alpha, it ends up in the first reg,
not the last, as it would when reading rgb too.
Christoph Bumiller [Thu, 24 Sep 2009 15:37:08 +0000 (17:37 +0200)]
nv50: actually enable view volume clipping
Until now, only primitives wholly outside the view volume
were not drawn.
This was only visibile when using a viewport smaller than
the window size, naturally.
Christoph Bumiller [Thu, 24 Sep 2009 15:24:48 +0000 (17:24 +0200)]
nv50: RCP and RSQ cannot load from VP inputs
Christoph Bumiller [Fri, 25 Sep 2009 08:33:02 +0000 (10:33 +0200)]
nv50: fix CEIL and TRUNC
Separated the integer rounding mode flag for cvt.
Christoph Bumiller [Fri, 25 Sep 2009 08:24:40 +0000 (10:24 +0200)]
nv50: implement BGNLOOP, BRK, ENDLOOP
There's a good chance a loop won't execute correctly
though since our TEMP allocation assumes programs to
be executed linearly. Will fix later.
Christoph Bumiller [Thu, 24 Sep 2009 14:39:56 +0000 (16:39 +0200)]
nv50: implement IF, ELSE, ENDIF opcodes
Cooper Yuan [Fri, 25 Sep 2009 07:15:20 +0000 (15:15 +0800)]
r300g: add texture format for xvmc
Chia-I Wu [Wed, 23 Sep 2009 08:56:20 +0000 (16:56 +0800)]
mesa/main: Make FEATURE_convolve follow feature conventions.
As shown in mfeatures.h, this allows users of convolve.h to work without
knowing if the feature is available.
Chia-I Wu [Mon, 7 Sep 2009 09:17:11 +0000 (17:17 +0800)]
mesa/main: Make FEATURE_colortable follow feature conventions.
As shown in mfeatures.h, this allows users of colortab.h to work
without knowing if the feature is available.