Corbin Simpson [Mon, 19 May 2008 06:52:54 +0000 (23:52 -0700)]
r5xx: Swap sources for CMP.
Follows the same pattern as the op on r3xx/r4xx. Thanks airlied.
Corbin Simpson [Mon, 19 May 2008 06:35:07 +0000 (23:35 -0700)]
r5xx: Fix typo of epic proportions.
Corbin Simpson [Mon, 19 May 2008 05:38:28 +0000 (22:38 -0700)]
r5xx: ALU/OUT fixups.
Lots of small changes. Intentionally breaks some tex stuffs.
Brian Paul [Sun, 18 May 2008 22:04:55 +0000 (16:04 -0600)]
Move _mesa_init_glsl_driver_functions() into shader_api.c
This allows making a bunch of functions static, and removes a state
tracker dependency on driverfuncs.c
cherry-picked from gallium-0.1
Brian Paul [Sun, 18 May 2008 21:55:24 +0000 (15:55 -0600)]
additional fog/color matrix changes from gallium-0.1
Brian Paul [Sun, 18 May 2008 21:52:13 +0000 (15:52 -0600)]
add state vars for color matrix, pixel transfer scale&bias
cherry-picked from gallium-0.1 (
068c7bd912283e051a55b2fd5c4568685d10f3ed)
Brian Paul [Sun, 18 May 2008 21:50:20 +0000 (15:50 -0600)]
mesa: added internal post color matrix scale/bias vars
cherry-picked from gallium-0.1 (
302daeb2ec62c59bd28d0c53cdc0fb07dc9d0f58)
Brian Paul [Sun, 18 May 2008 21:46:26 +0000 (15:46 -0600)]
fixes to _mesa_combine_programs(), from gallium-0.1
Brian Paul [Sun, 18 May 2008 21:41:36 +0000 (15:41 -0600)]
added div by zero check for Fog.End/Start (from gallium-0.1)
Brian Paul [Sun, 18 May 2008 21:41:01 +0000 (15:41 -0600)]
clean-ups / additions from gallium-0.1 branch
Dave Airlie [Sun, 18 May 2008 07:58:29 +0000 (17:58 +1000)]
r300: fixup US_OUT_FMT bits
Dave Airlie [Sun, 18 May 2008 05:24:38 +0000 (15:24 +1000)]
r500: you can have a single texcoord
Corbin Simpson [Sat, 17 May 2008 20:38:35 +0000 (13:38 -0700)]
r5xx: Add OPCODE_KIL.
Corbin Simpson [Sat, 17 May 2008 19:45:46 +0000 (12:45 -0700)]
r5xx: Added OPCODE_DPH.
Like DP4, but with one swizzle change.
Corbin Simpson [Sat, 17 May 2008 16:27:35 +0000 (09:27 -0700)]
r5xx: Fix FRC.
This makes tri-frc work.
(Remind me again why I'm allowed near a compiler, lawl.)
Corbin Simpson [Fri, 16 May 2008 18:46:26 +0000 (11:46 -0700)]
r5xx: Fix SCS.
Output instructions need to be marked OUT so they can write to the fifo.
Also, negation doesn't work with SWZ yet.
Corbin Simpson [Thu, 15 May 2008 17:51:52 +0000 (10:51 -0700)]
r5xx: Add OPCODE_SWZ.
It's so easy!
Corbin Simpson [Thu, 15 May 2008 17:29:38 +0000 (10:29 -0700)]
r5xx: Add OPCODE_SCS.
It's disabled, though, because it doesn't work. I'll figure it out later...
Corbin Simpson [Thu, 15 May 2008 07:49:32 +0000 (00:49 -0700)]
r5xx: Adding more opcodes.
EX2, FRC, LG2, SIN, RCP, and RSQ, if you care.
All of these except FRC are like COS. This pretty much rounds out the set of
opcodes which can be done in one ALU inst.
Corbin Simpson [Thu, 15 May 2008 07:18:08 +0000 (00:18 -0700)]
r5xx: First swing at OPCODE_COS.
Corbin Simpson [Thu, 15 May 2008 07:11:10 +0000 (00:11 -0700)]
r5xx: Unbreak MAX and MIN.
Both of them had faulty copypasta.
Dave Airlie [Sat, 17 May 2008 03:31:14 +0000 (13:31 +1000)]
r500: set fragprog end to correct place
Alex Deucher [Sat, 17 May 2008 00:40:47 +0000 (10:40 +1000)]
r300: SC register naming cleanup
Alex Deucher [Sat, 17 May 2008 00:27:11 +0000 (10:27 +1000)]
r500: write out the correct FP registers
Brian Paul [Fri, 16 May 2008 21:47:55 +0000 (15:47 -0600)]
bring in fixes/changes from gallium-0.1
Brian Paul [Fri, 16 May 2008 21:23:04 +0000 (15:23 -0600)]
fix an attr/src mix-up when setting-up/binding vertex arrays
This fixes problems with incorrect material coefficients when glMaterial
is called per-vertex.
Brian Paul [Fri, 16 May 2008 21:17:35 +0000 (15:17 -0600)]
fix merge collision
Brian Paul [Fri, 16 May 2008 16:49:44 +0000 (10:49 -0600)]
silence warning, new assertion
Shunichi Fuji [Fri, 16 May 2008 16:11:25 +0000 (10:11 -0600)]
free(key) in _tnl_UpdateFixedFunctionProgram()
Brian Paul [Fri, 16 May 2008 15:56:59 +0000 (09:56 -0600)]
Fix a program refcounting error, don't share program parameter lists.
The refcounting bug was causing a memleak (unfreed programs).
The old parameter list sharing is not needed since the change in how
uniforms are handled.
Brian Paul [Fri, 16 May 2008 15:56:11 +0000 (09:56 -0600)]
minor changes to aid debugging
Brian Paul [Fri, 16 May 2008 15:38:33 +0000 (09:38 -0600)]
remove stray, left-over RefCount++
Brian Paul [Thu, 15 May 2008 01:14:10 +0000 (19:14 -0600)]
whitespace/formatting
Brian Paul [Wed, 14 May 2008 22:44:48 +0000 (16:44 -0600)]
init SamplersUsed bits in _mesa_parse_arb_fragment_program
Brian Paul [Wed, 14 May 2008 22:23:46 +0000 (16:23 -0600)]
fix assertion typo: s/=/==/
Shunichi Fuji [Fri, 16 May 2008 20:18:06 +0000 (13:18 -0700)]
Fix memory leak in _tnl_UpdateFixedFunctionProgram
Brian Paul [Fri, 16 May 2008 20:15:03 +0000 (13:15 -0700)]
Fix DRI build
Dave Airlie [Thu, 15 May 2008 10:38:41 +0000 (20:38 +1000)]
r500: default rsunit swizzle like fglrx
Dave Airlie [Thu, 15 May 2008 06:24:54 +0000 (16:24 +1000)]
r500: shift tex src properly
Dave Airlie [Thu, 15 May 2008 05:05:40 +0000 (15:05 +1000)]
r500: fixup r500 rs unit texture coordinate counting
Dave Airlie [Thu, 15 May 2008 04:54:51 +0000 (14:54 +1000)]
r500: remove some debugging
Dave Airlie [Thu, 15 May 2008 04:52:39 +0000 (14:52 +1000)]
r500: split output/pixel masks and emit in the correct places
Dave Airlie [Thu, 15 May 2008 04:51:50 +0000 (14:51 +1000)]
r3/500: emit RS state before VAP
Dave Airlie [Thu, 15 May 2008 03:48:31 +0000 (13:48 +1000)]
r500: fixup the program allocations to be the correct sizes
Dave Airlie [Thu, 15 May 2008 03:47:47 +0000 (13:47 +1000)]
r300: set screen so that context init can find out chip ids
Dave Airlie [Thu, 15 May 2008 03:24:01 +0000 (13:24 +1000)]
r500: add cmp support in theory
Dave Airlie [Thu, 15 May 2008 03:21:50 +0000 (13:21 +1000)]
r500: some trivial fixups to get tri working.
the counter was being used one instruction over the end
Dave Airlie [Thu, 15 May 2008 01:46:23 +0000 (11:46 +1000)]
r500: we just need to emit a colour for clear drop tex instruction
Brian Paul [Wed, 14 May 2008 22:09:46 +0000 (16:09 -0600)]
Updated GLSL uniform/sampler handling from gallium-0.1 branch
Previously, the shader linker combined the uniforms used by the vertex and
fragment shaders into a combined set of uniforms. This made the implementation
of glUniform*() simple, but was rather inefficient otherwise. Now each shader
gets its own set of uniforms (no more modelview matrix showing up in the
fragment shader uniforms, for example).
cherry-picked by hand from gallium-0.1 branch
Brian Paul [Wed, 14 May 2008 19:12:44 +0000 (13:12 -0600)]
mesa: new functions for managing list/index of uniforms
cherry-picked from gallium-0.1
Brian Paul [Wed, 14 May 2008 19:01:13 +0000 (13:01 -0600)]
clean-up swizzle fields in fog code, fix NegateBase
cherry-picked from gallium-0.1
Brian Paul [Wed, 14 May 2008 19:00:27 +0000 (13:00 -0600)]
sync up with gallium-0.1 changes
New _mesa_num_inst_dst_regs(), _mesa_is_tex_instruction() functions
Brian Paul [Wed, 14 May 2008 18:53:03 +0000 (12:53 -0600)]
added _mesa_combine_parameter_lists()
cherry-picked from gallium-0.1
Brian Paul [Wed, 14 May 2008 18:39:41 +0000 (12:39 -0600)]
mesa: added _mesa_insert_instructions()
Also, use new _mesa_free_instructions() in a few places.
cherry-picked from gallium-0.1
Brian Paul [Wed, 14 May 2008 18:37:07 +0000 (12:37 -0600)]
mesa: added _mesa_free_instructions()
cherry-picked from gallium-0.1
Brian Paul [Wed, 14 May 2008 18:10:45 +0000 (12:10 -0600)]
fix some additional program refcounting bugs
Xiang, Haihao [Wed, 14 May 2008 01:52:46 +0000 (09:52 +0800)]
_generic_read_RGBA_span_BGRA8888_REV_SSE2: It should adjust the source
and target pointers after do the first 2 pixels. fix bug #15850
Alex Deucher [Tue, 13 May 2008 20:12:57 +0000 (16:12 -0400)]
R300: clean up GA registers
Alex Deucher [Tue, 13 May 2008 19:46:23 +0000 (15:46 -0400)]
R3xx: clean up ZB registers
Alex Deucher [Tue, 13 May 2008 18:32:30 +0000 (14:32 -0400)]
R300: clean up CB registers
Alex Deucher [Tue, 13 May 2008 18:02:29 +0000 (14:02 -0400)]
R300: clean up Fog registers
Alex Deucher [Tue, 13 May 2008 17:38:30 +0000 (13:38 -0400)]
R500: fixup r300EmitClearState() FP for r5xx
Alex Deucher [Tue, 13 May 2008 12:37:58 +0000 (08:37 -0400)]
R300: cleanup FS code and fill in missing details
Alex Deucher [Tue, 13 May 2008 10:09:55 +0000 (06:09 -0400)]
R3xx: more PVS cleanup
Alex Deucher [Mon, 12 May 2008 15:58:35 +0000 (11:58 -0400)]
Merge branch 'r500-support' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa into r500-support
Alex Deucher [Mon, 12 May 2008 15:57:08 +0000 (11:57 -0400)]
R500: add support for 4k textures
Dan Nicholson [Fri, 9 May 2008 23:19:03 +0000 (16:19 -0700)]
Don't link demos directly to X libraries
Since the linker will just pull in the libraries needed from libGL, we
don't need to link the demos directly to the X libraries. Fixes #15886.
Dan Nicholson [Tue, 6 May 2008 17:51:49 +0000 (10:51 -0700)]
autoconf: Allow XCB to be used for GLX
Adds an --enable-xcb switch to use XCB in GLX. This only has an effect
when the driver is DRI.
Dan Nicholson [Tue, 6 May 2008 13:21:41 +0000 (06:21 -0700)]
Default DRI driver directory to match X.Org xserver
Since the only valid consumer of the DRI drivers is the X.Org xserver,
this changes the default DRI driver directory to match xorg-server:
${libdir}/dri. The old default of /usr/X11R6/modules/dri was wrong for
nearly all current systems.
Dan Nicholson [Tue, 6 May 2008 01:24:21 +0000 (18:24 -0700)]
autoconf: Attempt to figure out the PIC flags for the platform
This commit adds an autoconf macro, MESA_PIC_FLAGS, which sets the
PIC flags according to platform and static/shared setting. The platform
specifics are taken straight from libtool.m4 and stripped down to just
the flags and platforms we cover in Mesa. This should hopefully make it
possible to use autoconf on non-GCC platforms.
The macro is added external to configure.ac in acinclude.m4 since it's
pretty bloated.
Note to BSDers: Previously, x86 defaulted to non-PIC on FreeBSD. I
didn't carry that preference into this macro. Instead, you can just use
--disable-pic where desired.
Dave Airlie [Fri, 9 May 2008 03:51:37 +0000 (13:51 +1000)]
intel: use new mipmap generation hooks in driver.
Dave Airlie [Fri, 9 May 2008 03:41:02 +0000 (13:41 +1000)]
swrast/dri: switch over users of generate_mipmap to new interface
Dave Airlie [Fri, 9 May 2008 03:33:56 +0000 (13:33 +1000)]
Revert "mesa/intel: map/unmap texture objects around mipmap generation function."
This reverts commit
c50ffc4cb89b67ae59208eb72cdb664c846ba987.
I'll fix this using the mipmap hooks I just picked from gallium-0.1
Brian [Fri, 8 Feb 2008 21:45:58 +0000 (14:45 -0700)]
Remove unused texunit parameter to ctx->Driver.GenerateMipmap()
(cherry picked from commit
c3395f4473c8fdf75d04c0dd72e687bc8d8127a7)
Dave Airlie [Fri, 9 May 2008 03:33:06 +0000 (13:33 +1000)]
Added ctx->Driver.GenerateMipmap() driver hook
(cherry picked from commit
4c2f3dbca940f289e67248682b84a3516d5a3031)
Conflicts:
src/mesa/drivers/common/driverfuncs.c
Dave Airlie [Fri, 9 May 2008 03:02:41 +0000 (13:02 +1000)]
mesa/intel: map/unmap texture objects around mipmap generation function.
This at least stops the compiz brain explosion we were seeing, I do wonder
though if we should somehow be calling intel_generate_mipmap somehow.
Kristian Høgsberg [Thu, 8 May 2008 23:48:32 +0000 (19:48 -0400)]
Add RS690M PCI ID.
Brian Paul [Thu, 8 May 2008 16:59:31 +0000 (10:59 -0600)]
disable debug printfs
Brian Paul [Thu, 8 May 2008 14:39:30 +0000 (08:39 -0600)]
disable GL_DEPTH_TEST before glDrawPixels in case window has unrequested depth buffer
Brian Paul [Thu, 8 May 2008 14:36:49 +0000 (08:36 -0600)]
call glutDestroyWindow()
Xiang, Haihao [Thu, 8 May 2008 03:52:57 +0000 (11:52 +0800)]
mesa: Call RENDER_FINISH on the zero pixel case.
Brian Paul [Thu, 8 May 2008 00:51:44 +0000 (18:51 -0600)]
fix refcounting bugs in tnl/tex program caches
Brian Paul [Wed, 7 May 2008 15:14:10 +0000 (09:14 -0600)]
updated options/help
Dan Nicholson [Wed, 7 May 2008 18:35:23 +0000 (11:35 -0700)]
Never fail `make clean'
Mostly some pedantic changes such that `make clean' always ignores
errors. Also changed the top clean target to do the `touch
configs/current' dance instead of realclean.
Dan Nicholson [Wed, 7 May 2008 17:21:01 +0000 (10:21 -0700)]
Run `make clean' in drivers/xorg, too
Dan Nicholson [Wed, 7 May 2008 14:48:29 +0000 (07:48 -0700)]
Refactor installation targets
Currently, there is a single path in src/mesa/Makefile to install that
has a few conditionals in it. This commit changes install to act like
default where we loop over $(DRIVER_DIRS), deciding what to do.
A new target, install-headers, has been broken out to accomodate
installing a standalone OSMesa where neither libGL or gl.pc are wanted.
Dan Nicholson [Wed, 7 May 2008 14:11:49 +0000 (07:11 -0700)]
Ensure recursive makes always propagate errors
There were a couple spots left where a recursive make could fail in a
chain of commands without stopping.
Dave Airlie [Wed, 7 May 2008 05:59:21 +0000 (15:59 +1000)]
r500: cleanup r500 RS setup
Dave Airlie [Wed, 7 May 2008 05:16:27 +0000 (15:16 +1000)]
r500: for rectangular textures set to unscaled coordinates.
Corbin Simpson [Wed, 7 May 2008 07:06:26 +0000 (00:06 -0700)]
r5xx: Fix FP inputs. (For good?)
FP inputs are now counted and mapped correctly, and temps
are allocated tightly and correctly.
Corbin Simpson [Wed, 7 May 2008 06:36:50 +0000 (23:36 -0700)]
r5xx: Fix false error with DP3/DP4.
DP3/DP4 only takes two arguments, but tried to load three, causing
a false fallback to the dumb shader.
Corbin Simpson [Wed, 7 May 2008 05:18:28 +0000 (22:18 -0700)]
r5xx: Index inputs and temps.
This is not the same as r3xx indexing. It only tries to protect inputs on
the pixel stack from getting clobbered by temps or texs.
Texs don't need special treatment since they read from special input regs
and write to the same temp regs as ALU/FC instructions.
Brian [Wed, 7 May 2008 05:08:51 +0000 (23:08 -0600)]
implement full reference counting for vertex/fragment programs
Use _mesa_reference_vert/fragprog() wherever we assign program pointers.
Fixes a memory corruption bug found with glean/api2 test.
Corbin Simpson [Wed, 7 May 2008 01:14:21 +0000 (18:14 -0700)]
r5xx: FP: Add OPCODE_TXB.
Tex lookup with biased LOD. Should magically work.
Corbin Simpson [Wed, 7 May 2008 00:21:30 +0000 (17:21 -0700)]
r5xx: FP: Make MOV/ABS look pretty.
We can't really do anything like emit_alu, so we're doing emit_mov instead.
Dan Nicholson [Tue, 6 May 2008 22:46:40 +0000 (15:46 -0700)]
Update make output for autoconf help
Dan Nicholson [Tue, 6 May 2008 21:29:59 +0000 (14:29 -0700)]
Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa
Dan Nicholson [Tue, 6 May 2008 21:27:57 +0000 (14:27 -0700)]
Prevent makedepend from running multiple times
The default target in src/mesa/Makefile calls a recursive $(MAKE). With
parallel jobs, this causes makedepend to run twice. Instead, block on
the first make until depend has been created.
Dan Nicholson [Tue, 6 May 2008 21:00:43 +0000 (14:00 -0700)]
Always cleanup the makedepend backup files
Consistently cleanup the depend.bak files created by makedepend. Also,
realclean has been changed to use a single find command, which speeds it
up considerably.
Michal Wajdeczko [Tue, 6 May 2008 20:01:29 +0000 (13:01 -0700)]
Add support for ATI_separate_stencil in display lists.