José Fonseca [Wed, 25 Mar 2009 20:58:53 +0000 (20:58 +0000)]
util: Use size_t (for x86_64).
José Fonseca [Wed, 25 Mar 2009 20:58:38 +0000 (20:58 +0000)]
util: Don't use x86 asm on x86_64.
José Fonseca [Wed, 25 Mar 2009 20:56:34 +0000 (20:56 +0000)]
draw: Use size_t (for x86_64).
José Fonseca [Wed, 25 Mar 2009 19:32:54 +0000 (19:32 +0000)]
scons: Move MSVC specific away from Mingw builds.
Maciej Cencora [Thu, 19 Mar 2009 20:17:01 +0000 (21:17 +0100)]
r300: cleanup swtcl a little
- remove disabled code
- silence compiler warnings (uinitialized values)
- remove unneeded code
José Fonseca [Wed, 25 Mar 2009 19:24:16 +0000 (19:24 +0000)]
scons: Support building with the Windows SDK.
x86_64 is also supported.
Brian Paul [Wed, 25 Mar 2009 19:02:44 +0000 (13:02 -0600)]
egl: include stdint.h to get the c99 integer typedefs
Fixes breakage from commit
6dd9c221012d5e091b2ede90d9b2a6f0383abd58
Alan Coopersmith [Tue, 24 Mar 2009 03:35:54 +0000 (20:35 -0700)]
Add Solaris to OS'es using X in eglplatform.h
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Alan Coopersmith [Tue, 24 Mar 2009 03:35:09 +0000 (20:35 -0700)]
define __builtin_expect for non-gcc compilers in two more glx files
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Alan Coopersmith [Tue, 24 Mar 2009 03:17:57 +0000 (20:17 -0700)]
Add #ifdefs needed to compile Gallium on Solaris with gcc or Sun cc
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Alan Coopersmith [Tue, 24 Mar 2009 02:38:58 +0000 (19:38 -0700)]
Convert u_int*_t to C99 standard uint*_t
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Alan Coopersmith [Mon, 23 Mar 2009 23:51:54 +0000 (16:51 -0700)]
mklib improvements for Solaris
Move flags for linking standard C/C++ libraries from configure.ac to mklib
Use -norunpath flag when linking with Sun C++ compiler
Convert mklib -exports list into a linker mapfile
Set FINAL_LIBS correctly when -noprefix is used
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Brian Paul [Wed, 25 Mar 2009 14:59:31 +0000 (08:59 -0600)]
glew: fix GLEW_LIB_NAME
This fixes rebuilding of the library every time we run make.
Michel Dänzer [Wed, 25 Mar 2009 14:53:28 +0000 (15:53 +0100)]
Revert "dri2: Avoid round-tripping on DRI2GetBuffers for the same set of buffers."
This scheme breaks when the display connection doesn't receive ConfigureNotify
events. This caused reporoducible problems (cropped / misplaced output) when
starting a 3D application in a guest operating system in VMware Workstation.
This reverts commit
dd1c68f15123a889a3ce9d2afe724e272d163e32.
Conflicts:
src/glx/x11/dri2_glx.c
Brian Paul [Wed, 25 Mar 2009 14:33:10 +0000 (08:33 -0600)]
gl: update include/GL/glext.h to version 48
Brian Paul [Wed, 25 Mar 2009 14:17:37 +0000 (08:17 -0600)]
egl: don't use __FUNCTION__ in error messages
Alan Hourihane [Wed, 25 Mar 2009 14:04:18 +0000 (14:04 +0000)]
slang: ensure structure elements have their array length set
Corbin Simpson [Wed, 25 Mar 2009 14:15:07 +0000 (07:15 -0700)]
r300-gallium: r300-fs: Moar.
Corbin Simpson [Wed, 25 Mar 2009 13:24:39 +0000 (06:24 -0700)]
r300-gallium: Unify shader interfaces, enable r300 shader, start unbreaking.
progs/trivial/clear no longer is horrifically wrong, just kind of wrong.
Corbin Simpson [Wed, 25 Mar 2009 12:48:07 +0000 (05:48 -0700)]
r300-gallium: r500-fs: Remove unused variable.
Alan Coopersmith [Wed, 25 Mar 2009 03:51:53 +0000 (20:51 -0700)]
r300_cmdbuf.c: convert cast to a form supported by Sun cc
Fixes Sun cc error:
"r300_cmdbuf.c", line 142: invalid cast expression
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Michel Dänzer [Wed, 25 Mar 2009 10:13:28 +0000 (11:13 +0100)]
r300: Texture size limit cleanups.
Since core Mesa MAX_TEXTURE_LEVELS was bumped, we were incorrectly advertising
a maximum texture size of 4096 on older chips, causing corrupted menu text in
Extreme Tux Racer or Armagetron.
Also make sure our texture image array can actually hold all the mipmap levels
we support...
Keith Whitwell [Tue, 24 Mar 2009 19:25:56 +0000 (19:25 +0000)]
progs/vp: more psiz tests
Ben Skeggs [Wed, 25 Mar 2009 02:16:25 +0000 (12:16 +1000)]
nv50: fix typo in nv50_query.c
Ben Skeggs [Wed, 25 Mar 2009 02:09:58 +0000 (12:09 +1000)]
nouveau: fix some pipe_buffer reference counting issues
Alan Hourihane [Tue, 24 Mar 2009 22:59:20 +0000 (22:59 +0000)]
mesa: bump MAX_PROGRAM_TEMPS to 256 (there's some big shaders out there)
Younes Manton [Tue, 24 Mar 2009 22:55:37 +0000 (18:55 -0400)]
nouveau: Frontbuffer needs to be marked as linear.
Brian Paul [Tue, 24 Mar 2009 22:06:27 +0000 (16:06 -0600)]
demos: add LDFLAGS for corender target, bug 20844
Keith Whitwell [Tue, 24 Mar 2009 17:50:36 +0000 (17:50 +0000)]
progs/vp: add pointsize + clamp test
Keith Whitwell [Tue, 24 Mar 2009 16:38:07 +0000 (16:38 +0000)]
mesa/st: bump gallium version to 0.3
To distinguish from the -0.2 version still being maintained on the
gallium-mesa-7.4 branch. There are already greater interface changes
between these two branches than there were between -0.2 and -0.1.
Also stop injecting Tungsten into the vendor string - the Gallium in
the renderer string should be sufficient.
Keith Whitwell [Tue, 24 Mar 2009 16:35:29 +0000 (16:35 +0000)]
progs/trivial: add fflushes for cygwin
Robert Ellison [Tue, 24 Mar 2009 15:53:22 +0000 (09:53 -0600)]
i965: fix point rasterization when rendering to FBO
The FBO pixel coordinate system, with (0,0) as the
upper-left pixel, is inverted in Y compared to the
normal OpenGL pixel coordinate system, which has
(0,0) as its lower-left pixel.
Viewport and polygon stipple are sensitive to this
inversion; so is point rasterization. The basic
fix is simple: when rendering to an FBO, instead
of the normal RASTRULE_UPPER_RIGHT that's
appropriate for OpenGL windows, use the Y inversion
RASTRULE_LOWER_RIGHT.
Unfortunately, current Intel documentation has this
value listed as "Reserved, but not seen as useful".
It does work on at least some i965-class devices,
though; and the worst that could happen if an
older device didn't support it would be incorrect
point rasterization to FBOs, which is what happens
already, so this fix is at least no worse than what
happens presently, and is better for some (and possibly
all) i965-class devices.
Keith Whitwell [Tue, 24 Mar 2009 15:27:21 +0000 (15:27 +0000)]
progs/trivial: draw non-interleaved arrays out of one vbo
Jakob Bornecrantz [Sun, 22 Mar 2009 07:46:18 +0000 (08:46 +0100)]
progs/tests: Build texcompress2 with scons
Eric Anholt [Mon, 23 Mar 2009 23:29:31 +0000 (16:29 -0700)]
i965: Fix glFrontFacing in twoside GLSL demo.
This also cuts instructions by just using the existing bit in the payload
rather than computing it from the determinant in the SF unit and passing it
as a varying down to the WM. Something still goes wrong with getting the
backface color right, but a simpler shader appears to get the right result.
Eric Anholt [Tue, 24 Mar 2009 05:35:03 +0000 (22:35 -0700)]
i965: Fix fog coordinate g,b,a values when glFrontFacing isn't used.
Previously, we would sample (f,glFrontFacing,undef,undef) instead of the
(f,0,0,1) that fragment.fogcoord is supposed to return. Due to
glFrontFacing's presence in FOGC.y, we'll still give bad results there when
glFrontFacing is used.
Bug #19122, piglit testcase fp-fog.
Eric Anholt [Tue, 24 Mar 2009 05:30:12 +0000 (22:30 -0700)]
i965: Clean up a bit of mess with unneeded variables in emit_interp.
Eric Anholt [Mon, 23 Mar 2009 20:48:24 +0000 (13:48 -0700)]
i965: Fix trailing "d" in debug output for 3DSTATE_VERTEX_ELEMENTS.
Eric Anholt [Mon, 23 Mar 2009 19:29:02 +0000 (12:29 -0700)]
i965: Fix occlusion query when no other WM state updates occur.
Turns out that XXX comment was important. We weren't flagging the WM to
re-update with the statistics enable, so we got zeroes out of our query.
Bug #20740, fixes piglit occlusion_query test.
Signed-off-by: Eric Anholt <eric@anholt.net>
Keith Whitwell [Mon, 23 Mar 2009 19:01:40 +0000 (19:01 +0000)]
vpglsl: add missing SConscript
Keith Whitwell [Mon, 23 Mar 2009 18:38:11 +0000 (18:38 +0000)]
draw: update aa points shader comment
Keith Whitwell [Mon, 23 Mar 2009 18:37:33 +0000 (18:37 +0000)]
progs/fp: pass texcoord to triangle, add a test shader
Michel Dänzer [Mon, 23 Mar 2009 17:03:13 +0000 (18:03 +0100)]
gallium: Remove remnants of reference counting internals outside of p_refcnt.h.
Jakob Bornecrantz [Sat, 21 Mar 2009 13:23:04 +0000 (14:23 +0100)]
debug: Add function for writing transfers to files
Jakob Bornecrantz [Fri, 20 Mar 2009 22:06:05 +0000 (23:06 +0100)]
trace: Fix args to buffer write
José Fonseca [Mon, 23 Mar 2009 12:05:07 +0000 (12:05 +0000)]
util: Add a new macro for testing empty lists.
Brian Paul [Mon, 23 Mar 2009 00:11:12 +0000 (18:11 -0600)]
softpipe: reformatting, comments, minor clean-ups
Brian Paul [Mon, 23 Mar 2009 00:10:10 +0000 (18:10 -0600)]
tgsi: minor comments
Michal Krol [Sat, 21 Mar 2009 11:18:09 +0000 (12:18 +0100)]
tgsi: Document KIL, KILP instructions.
Keith Whitwell [Sat, 21 Mar 2009 10:37:33 +0000 (10:37 +0000)]
gallium: remove remaining references to origin_lower_left
Michal Krol [Sat, 21 Mar 2009 10:46:54 +0000 (11:46 +0100)]
st: Silence compiler warnings.
Brian Paul [Sat, 21 Mar 2009 02:25:34 +0000 (20:25 -0600)]
gallium: remove use of origin_lower_left
This was used to indicate OpenGL's lower-left origin for fragment window
coordinates for polygon stipple and gl_FragCoord.
Now:
- fragment coordinate origin is always upper-left corner
- GL polygon stipple is inverted and shifted before given to gallium
- GL fragment programs that use INPUT[WPOS] are modified to use an
inverted window coord which is placed in a temp register.
Note: the origin_lower_left field still exists in pipe_rasterizer_state.
Remove it when all the drivers, etc. no longer reference it.
Brian Paul [Sat, 21 Mar 2009 02:15:58 +0000 (20:15 -0600)]
mesa: add new internal state var for window size
Actually, window width - 1, height - 1
Brian Paul [Fri, 20 Mar 2009 23:08:30 +0000 (17:08 -0600)]
mesa: linear scan register allocation for shader programs
This is a check-point commit; not turned on yet.
Use the linear scan register allocation algorithm to re-allocate temporary
registers. This is done by computing the live intervals for registers and
reallocating temps with that information.
For some shaders this dramatically reduces the number of temp registers
needed.
For the time being we give up on a few cases such as relative-indexed temps
and subroutine calls (but we inline most GLSL functions anyway).
Brian Paul [Fri, 20 Mar 2009 15:20:53 +0000 (09:20 -0600)]
docs: updated Mesa extension enum info
Corbin Simpson [Fri, 20 Mar 2009 21:47:49 +0000 (14:47 -0700)]
r300-gallium: Misspelled macro name.
*pulls paper bag down over head*
Corbin Simpson [Fri, 20 Mar 2009 07:48:53 +0000 (00:48 -0700)]
r300-gallium: Put r300_cs_inlines to bed.
Guess it was a mistake in the first place. Oops.
Corbin Simpson [Fri, 20 Mar 2009 07:43:29 +0000 (00:43 -0700)]
r300-gallium: Simplify/neaten up packet3.
Deck chairs on the Hindenburg. :3
Corbin Simpson [Fri, 20 Mar 2009 07:35:38 +0000 (00:35 -0700)]
r300-gallium: Clean up surface_fill, prep for surface_copy code.
Corbin Simpson [Fri, 20 Mar 2009 07:15:03 +0000 (00:15 -0700)]
r300-gallium: Properly offset scissors.
As per r300_reg, classic Mesa, and xf86-video-ati.
Corbin Simpson [Fri, 20 Mar 2009 03:36:59 +0000 (20:36 -0700)]
r300-gallium: Clean up r300_swtcl_emit.
Some compile warnings, some statements without effect.
Corbin Simpson [Fri, 20 Mar 2009 03:32:08 +0000 (20:32 -0700)]
r300-gallium: Clean up some emit, and some state handlers.
Corbin Simpson [Thu, 19 Mar 2009 19:29:03 +0000 (12:29 -0700)]
r300-gallium: A bit more invariant state.
José Fonseca [Wed, 18 Mar 2009 16:54:25 +0000 (16:54 +0000)]
gallium: Explain what happens if buffer_flush_mapped_range isn't called.
Keith Whitwell [Fri, 20 Mar 2009 15:08:59 +0000 (15:08 +0000)]
gallium/util: add upload manager helper module
Add a module that will manage uploading and coalescing multiple
user-buffers, malloc-buffers and other random data that doesn't
happen to be in a GPU buffer already. The module stuffs multiple
little uploads into larger GPU buffers to reduce create/destroy
overheads, etc.
Eric Anholt [Wed, 18 Mar 2009 19:07:09 +0000 (12:07 -0700)]
Fix DRI2 accelerated EXT_texture_from_pixmap with GL_RGB format.
This requires upgrading the interface so that the argument to
glXBindTexImageEXT isn't just dropped on the floor. Note that this only
fixes the accelerated path on Intel, as Mesa's texture format support is
missing x8r8g8b8 support (right now, GL_RGB textures get uploaded as a8r8gb8,
but in this case we're not doing the upload so we can't really work around it
that way).
Fixes bugs with compositors trying to use shaders that use alpha channels, on
windows without a valid alpha channel. Bug #19910 and likely others as well.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Michal Krol [Fri, 20 Mar 2009 15:48:54 +0000 (16:48 +0100)]
progs/wgl: Send a resize message after context have been created.
Michal Krol [Fri, 20 Mar 2009 15:36:23 +0000 (16:36 +0100)]
stw: Do not err on nil context handle in MakeCurrent().
Michal Krol [Fri, 20 Mar 2009 15:16:12 +0000 (16:16 +0100)]
progs/wgl: Create GL context in a thread that actually uses it.
Michal Krol [Fri, 20 Mar 2009 15:13:39 +0000 (16:13 +0100)]
progs/wgl: Make context current to get GL_RENDERER string.
Michal Krol [Fri, 20 Mar 2009 14:45:00 +0000 (15:45 +0100)]
stw: Use u_handle_table to maintain context list.
Michal Krol [Fri, 20 Mar 2009 12:06:28 +0000 (13:06 +0100)]
winsys/gdi: Init state tracker's per-thread data.
Michal Krol [Fri, 20 Mar 2009 12:05:51 +0000 (13:05 +0100)]
stw: Keep per-thread storage for current context and pixel format.
Michal Krol [Fri, 20 Mar 2009 11:19:40 +0000 (12:19 +0100)]
slang: Use _mesa_snprintf() wrapper.
Alan Hourihane [Thu, 19 Mar 2009 22:38:01 +0000 (22:38 +0000)]
slang: initialize the context
Alan Hourihane [Thu, 19 Mar 2009 22:06:10 +0000 (22:06 +0000)]
slang: support uniform arrays
Jakob Bornecrantz [Thu, 19 Mar 2009 15:11:05 +0000 (16:11 +0100)]
trace: Formalize on a standard for data size pair
Brian Paul [Thu, 19 Mar 2009 16:26:50 +0000 (10:26 -0600)]
glslcompiler: added new options to override debug/optimization pragmas
Brian Paul [Thu, 19 Mar 2009 16:25:24 +0000 (10:25 -0600)]
glsl: change GLSL #pragma initialization
Initialize the shader's pragma settings before calling the compiler.
Added pragma "Ignore" fields to allow overriding the #pragma directives found
in shader source code.
Alan Hourihane [Thu, 19 Mar 2009 15:39:01 +0000 (15:39 +0000)]
egl: fix comment
Alan Hourihane [Thu, 19 Mar 2009 15:34:45 +0000 (15:34 +0000)]
egl: try harder for eglGetProcAddress()
Brian Paul [Thu, 19 Mar 2009 15:26:20 +0000 (09:26 -0600)]
glsl: when debug pragma is on, emit comments about function calls/inlines
BTW, the debug pragma syntax is "#pragma debug(on)"
Alan Hourihane [Thu, 19 Mar 2009 13:58:04 +0000 (13:58 +0000)]
mesa: check renderbuffer is defined before use.
Jakob Bornecrantz [Wed, 18 Mar 2009 18:10:32 +0000 (19:10 +0100)]
st/gl: Only transfer needed parts in st_TexSubimage
Alan Hourihane [Thu, 19 Mar 2009 10:16:28 +0000 (10:16 +0000)]
slang: if/else/break & if/else/continue work for unrolled loops
Michal Krol [Thu, 19 Mar 2009 10:16:01 +0000 (11:16 +0100)]
wgl: Add an `-s' option to wglthreads to force single-threaded operation.
Michal Krol [Thu, 19 Mar 2009 09:39:57 +0000 (10:39 +0100)]
swrast: Silence compiler warnings, give better structure to the code as a result.
Michal Krol [Thu, 19 Mar 2009 08:52:50 +0000 (09:52 +0100)]
tgsi: Document vs_2_0 instruction set operations.
Michal Krol [Thu, 19 Mar 2009 08:49:38 +0000 (09:49 +0100)]
tgsi: Document vs_1_1 instruction set operations.
Michal Krol [Thu, 19 Mar 2009 08:44:51 +0000 (09:44 +0100)]
tgsi: Begin documenting ps_2_x instruction set operations.
Corbin Simpson [Wed, 18 Mar 2009 22:17:38 +0000 (15:17 -0700)]
r300-gallium: Emit viewport state.
Note that this will break you, hard, if you're not using RADEON_NO_TCL.
I really need to start vertex shaders soon.
Corbin Simpson [Wed, 18 Mar 2009 20:37:59 +0000 (13:37 -0700)]
r300-gallium: Viewport state storage.
Corbin Simpson [Wed, 18 Mar 2009 20:37:08 +0000 (13:37 -0700)]
r300-gallium: Fixup registers for viewport state.
Brian Paul [Wed, 18 Mar 2009 21:39:11 +0000 (15:39 -0600)]
mesa: use the IROUND() macro in pixel packing code
It turns out some tests are sensitive to rounding vs. truncating when
converting float color values to integers in glReadPixels(). In particular,
this matters when the destination format is 5/6/5 or 4/4/4/4, etc.
Alan Hourihane [Wed, 18 Mar 2009 21:42:14 +0000 (21:42 +0000)]
slang: redo the last commit for if/break & if/continue tests as it
wasn't good enough for deeply nested if's.
Alan Hourihane [Wed, 18 Mar 2009 21:40:03 +0000 (21:40 +0000)]
Revert "slang: if we detect an if/break or if/continue within a loop and we're"
This reverts commit
752296b8f311c5e3844f3ce89d17ba57224ce5ba.
Alan Hourihane [Wed, 18 Mar 2009 21:16:35 +0000 (21:16 +0000)]
slang: if we detect an if/break or if/continue within a loop and we're
trying to unroll, bail, and fallback to doing the real loop.
Keith Whitwell [Wed, 18 Mar 2009 19:14:45 +0000 (19:14 +0000)]
st: call _glapi_check_multithread from st_make_current
This function is called from many OS-dependent versions of MakeCurrent.
Move the check for multithreading to this central location to avoid
having to make this check from all the callers.
Thomas Hellstrom [Wed, 18 Mar 2009 11:28:31 +0000 (12:28 +0100)]
stw: Fix makeCurrent.
Flush if we change current context.
Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
José Fonseca [Wed, 18 Mar 2009 16:37:20 +0000 (16:37 +0000)]
progs: Build the wgl examples with scons.