Michal Krol [Thu, 17 Sep 2009 15:05:08 +0000 (16:05 +0100)]
llvmpipe: Respect input interpolators for the shader.
Cherry-picked from
fb2c7b6743ba6e89f24843890fb7fcd6a09c3dbb
José Fonseca [Sat, 19 Sep 2009 13:33:35 +0000 (14:33 +0100)]
mesa: Allow BlitFramebuffer from a texture.
Although GL_EXT_framebuffer_blit does not mention textures, it doesn't
forbid them either, and some thirdparty driver appear to support this.
Michal Krol [Fri, 18 Sep 2009 13:36:59 +0000 (14:36 +0100)]
softpipe: Fix cube face selection.
If arx and ary are equal, we still want to choose from one of them,
and not arz.
Michal Krol [Thu, 17 Sep 2009 15:05:08 +0000 (16:05 +0100)]
softpipe: Respect input interpolators for the shader.
Michal Krol [Thu, 17 Sep 2009 15:04:35 +0000 (16:04 +0100)]
tgsi: Scan input interpolators, too.
Keith Whitwell [Thu, 17 Sep 2009 11:09:16 +0000 (12:09 +0100)]
progs/perf: convert some DOS line-endings
It seems like some of these files were committed with CRLF initially.
Keith Whitwell [Thu, 17 Sep 2009 11:08:04 +0000 (12:08 +0100)]
progs/perf: add scons support, get working under mingw
Brian Paul [Thu, 17 Sep 2009 03:49:55 +0000 (21:49 -0600)]
mesa: begin some texstore code refactoring
Next step will be to move the calls to ctx->Driver.ChooseTextureFormat()
into the teximage.c functions so drivers don't have to do it.
Brian Paul [Thu, 17 Sep 2009 02:09:05 +0000 (20:09 -0600)]
mesa: meta driver functions for glCopyTex[Sub]Image()
Implement in terms of glReadPixels + glTex[Sub]Image().
This will allow us to get rid of some swrast texture code.
Brian Paul [Thu, 17 Sep 2009 01:33:01 +0000 (19:33 -0600)]
progs/perf: initial set of simple performance test programs
Initial tests include:
drawoverhead - measure overhead of state changes w.r.t drawing commands
teximage - measure glTexImage2D() and glTexSubImage2D() speed
vbo - measure glBufferData() and glBufferSubData() speed
vertexrate - measure vertex rate for immediate mode, glDrawArrays, VBOs, etc.
Brian Paul [Wed, 16 Sep 2009 21:49:33 +0000 (15:49 -0600)]
progs/glsl: minor Makefile clean-ups
Brian Paul [Wed, 16 Sep 2009 21:48:52 +0000 (15:48 -0600)]
swrast: remove mipmap generation checks (done in core Mesa now)
Brian Paul [Wed, 16 Sep 2009 01:53:50 +0000 (19:53 -0600)]
s3v: remove unneeded initializations
Brian Paul [Wed, 16 Sep 2009 01:47:06 +0000 (19:47 -0600)]
ffb: remove disabled code
José Fonseca [Wed, 16 Sep 2009 15:12:22 +0000 (16:12 +0100)]
llvmpipe: Don't assert due to unsupported texture wrap modes.
Issue a warning and fallback to clamping.
Ian Romanick [Wed, 16 Sep 2009 15:05:36 +0000 (08:05 -0700)]
Merge branch 'mesa_7_6_branch'
Brian Paul [Wed, 16 Sep 2009 14:59:32 +0000 (08:59 -0600)]
gallium: remove incorrect 'return' stmt
Ian Romanick [Wed, 16 Sep 2009 14:57:19 +0000 (07:57 -0700)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Conflicts:
src/mesa/main/dlist.c
Ian Romanick [Wed, 16 Sep 2009 14:39:58 +0000 (07:39 -0700)]
intel: Deassociated drawables from private context struct in intelUnbindContext
The generic DRI infrastructure makes sure that __DRIcontextRec::driDrawablePriv
and __DRIcontextRec::driReadablePriv are set to NULL after unbinding a
context. However, the intel_context structure keeps cached copies of
these pointers. If these cached pointers are not NULLed and the
drawable is actually destroyed after unbinding the context (typically
by way of glXDestroyWindow), freed memory will be dereferenced in
intelDestroyContext.
This should fix bug #23418.
José Fonseca [Wed, 16 Sep 2009 13:31:14 +0000 (14:31 +0100)]
gallium: Deprecate PIPE_CAP_S3TC.
No longer used. S3TC support is queried via
pipe_screen::is_format_supported.
Michal Krol [Wed, 16 Sep 2009 12:56:58 +0000 (13:56 +0100)]
softpipe: Do not advertise Z32_UNORM as a supported format.
José Fonseca [Wed, 16 Sep 2009 09:39:29 +0000 (10:39 +0100)]
gdi: Integrate with llvmpipe where available.
José Fonseca [Wed, 16 Sep 2009 09:39:06 +0000 (10:39 +0100)]
llvmpipe: Make the code portable for MinGW.
Zou Nan hai [Wed, 16 Sep 2009 05:25:46 +0000 (13:25 +0800)]
i965: do a flush in clear, fix openarena render issue,
fd.o bug# 23857
Dave Airlie [Wed, 16 Sep 2009 03:48:45 +0000 (13:48 +1000)]
radeon: cleanup compile defines mess.
I inherited this and really it stayed around far too long,
make it nice and simple.
Dave Airlie [Wed, 16 Sep 2009 03:25:02 +0000 (13:25 +1000)]
radeon: oops remove debugging left on in previous patch
Dave Airlie [Wed, 16 Sep 2009 03:07:02 +0000 (13:07 +1000)]
radeon: use txformat to decide to emit rect tex state.
This is more logical, and fixes a TFP issue.
Brian Paul [Wed, 16 Sep 2009 00:16:59 +0000 (18:16 -0600)]
mesa: move generate mipmap calls
Per the suggestion in the Intel driver, move the calls to
ctx->Driver.GenerateMipmap() into core Mesa so that drivers don't
have to worry about it.
Brian Paul [Wed, 16 Sep 2009 00:09:03 +0000 (18:09 -0600)]
mesa: minor clean-up
Brian Paul [Tue, 15 Sep 2009 23:41:40 +0000 (17:41 -0600)]
mesa: remove last of gotos
Brian Paul [Tue, 15 Sep 2009 23:36:35 +0000 (17:36 -0600)]
mesa: more goto removal
Brian Paul [Tue, 15 Sep 2009 23:32:01 +0000 (17:32 -0600)]
mesa: remove some gotos
This will make some subsequent changes easier...
Brian Paul [Tue, 15 Sep 2009 23:20:32 +0000 (17:20 -0600)]
mesa: clean-up fbo debug code
Brian Paul [Tue, 15 Sep 2009 23:13:49 +0000 (17:13 -0600)]
progs/demos: use non-default texobj in cubemap.c
Brian Paul [Tue, 15 Sep 2009 23:08:33 +0000 (17:08 -0600)]
progs/demos: create a texture object in lodbias.c
Before, we were using the default texture object (name=0). This caused
the intel_generate_mipmap() path to fail since passing texture=0 to
glFramebufferTexture2DEXT() causes us to _unbind_ the texture if present.
Zack Rusin [Tue, 15 Sep 2009 15:01:21 +0000 (11:01 -0400)]
st/xorg: fixing copies and composite shaders
copies were busted when src == dst. also the composite shaders
were incorrectly using the fragments instead of the texture coordinate.
Zack Rusin [Tue, 15 Sep 2009 13:02:20 +0000 (09:02 -0400)]
st/xorg: lots of fixes
fixes blending binding and copy coordinates
Brian Paul [Tue, 15 Sep 2009 22:01:33 +0000 (16:01 -0600)]
docs: GL_ARB_provoking_vertex
Brian Paul [Tue, 15 Sep 2009 22:01:22 +0000 (16:01 -0600)]
mesa: added GL_ARB_provoking_vertex (same as EXT version)
Alex Deucher [Tue, 15 Sep 2009 21:12:03 +0000 (17:12 -0400)]
radeon: don't build non-r600 span code on r600
Alex Deucher [Tue, 15 Sep 2009 20:58:37 +0000 (16:58 -0400)]
r600: minor span cleanups
Brian Paul [Tue, 15 Sep 2009 21:12:29 +0000 (15:12 -0600)]
docs: glUniform functions are now compiled into display lists
Brian Paul [Tue, 15 Sep 2009 21:10:29 +0000 (15:10 -0600)]
mesa: compile glUniformMatrix() functions into display lists
I believe this is the last of the shader-related functions that needed
display list treatment.
Brian Paul [Tue, 15 Sep 2009 20:56:55 +0000 (14:56 -0600)]
mesa: implement more glUniform display list functions
Brian Paul [Tue, 15 Sep 2009 20:38:52 +0000 (14:38 -0600)]
docs: document glUseProgram display list fix
Brian Paul [Tue, 15 Sep 2009 20:31:10 +0000 (14:31 -0600)]
mesa: compile glUniform4f() into display lists
Note: there are more glUniform functions to compile...
Brian Paul [Tue, 15 Sep 2009 20:25:44 +0000 (14:25 -0600)]
mesa: compile glUseProgram/glUseProgramObjectARB into display lists
Fixes bug 23746
Ian Romanick [Tue, 15 Sep 2009 20:14:38 +0000 (13:14 -0700)]
Merge branch 'mesa_7_6_branch'
Ian Romanick [Tue, 15 Sep 2009 20:13:35 +0000 (13:13 -0700)]
Merge commit 'origin/mesa_7_5_branch' into mesa_7_6_branch
Ian Romanick [Tue, 15 Sep 2009 20:12:22 +0000 (13:12 -0700)]
GLX: Complain when buggy applications call GLX 1.3 functions.
Zack Rusin [Tue, 15 Sep 2009 10:00:52 +0000 (06:00 -0400)]
st/xorg: Brian suggested that those could be mad's
optimizes the common paths
Brian Paul [Tue, 15 Sep 2009 18:35:41 +0000 (12:35 -0600)]
mesa: remove incorrect texture state check
Fixes incorrectly textured bitmap text in engine demo.
It's incorrect to test the texture enable bits here since they may have
been changed by disabling the shader above. Optimization is still possible
but will have to be reexamined.
Maarten Maathuis [Mon, 14 Sep 2009 18:21:56 +0000 (20:21 +0200)]
nv50: avoid excessive FIRE_RING
- And reduce RING_SPACE to 2, instead of 3.
Maarten Maathuis [Mon, 14 Sep 2009 17:42:53 +0000 (19:42 +0200)]
nv50: use flush_notify to reduce number of relocs
Michel Dänzer [Tue, 15 Sep 2009 16:31:07 +0000 (18:31 +0200)]
st/xorg: Only unreference texture on pixmap destruction, don't destroy it.
Fixes memory corruption if e.g. the driver still has references to the texture.
Michel Dänzer [Tue, 15 Sep 2009 16:30:58 +0000 (18:30 +0200)]
st/xorg: Explicitly check whether the driver supports the pixmap formats.
Rather than arbitrarily checking for pixmap depth < 15.
Michel Dänzer [Tue, 15 Sep 2009 16:23:00 +0000 (18:23 +0200)]
st/xorg: Use A8 format for depth 8 pixmaps.
The inconsistent bpp caused issues with UploadTo/DownloadFromScreen.
Brian Paul [Tue, 15 Sep 2009 15:52:27 +0000 (09:52 -0600)]
st/mesa: disable accidentally committed _mesa_print_program() call
Brian Paul [Tue, 15 Sep 2009 15:47:35 +0000 (09:47 -0600)]
Merge branch 'mesa_7_6_branch'
Brian Paul [Tue, 15 Sep 2009 15:45:18 +0000 (09:45 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Brian Paul [Mon, 14 Sep 2009 23:34:40 +0000 (17:34 -0600)]
ARB prog parser: regenerated file
Brian Paul [Mon, 14 Sep 2009 23:34:09 +0000 (17:34 -0600)]
ARB prog parser: more detailed error message for out of bounds ADDR offsets
Brian Paul [Tue, 15 Sep 2009 15:36:31 +0000 (09:36 -0600)]
gl: restore some PFNGL typedefs
Commit
d33c315d9e32584dea12cea683795b498a9f5eca removed a few too many
typedefs. We need the typedefs in glext.h which are protected by #ifdef
GL_VERSION_1_2 but we can exclude the ones protected by
GL_VERSION_1_2_DEPRECATED.
Andre Maasikas [Tue, 15 Sep 2009 15:27:51 +0000 (11:27 -0400)]
r600: support position_invariant programs
José Fonseca [Tue, 15 Sep 2009 15:02:20 +0000 (16:02 +0100)]
gallium: Use the enum for pipe_transfer::usage.
José Fonseca [Tue, 15 Sep 2009 15:02:00 +0000 (16:02 +0100)]
gallium: pipe_transfer_destroy helper inline.
Christoph Bumiller [Tue, 15 Sep 2009 13:24:32 +0000 (15:24 +0200)]
nv50: fix stupid thinko in emit_set
When swapping sources 0 and 1, EQ of course does *not*
become NE, etc.
Introduced in
2b963f5c723401aa2646bd48eefe065cd335e280.
Michal Krol [Tue, 15 Sep 2009 11:00:27 +0000 (12:00 +0100)]
gallium: Fix pointer type casts.
Christoph Bumiller [Tue, 15 Sep 2009 09:56:58 +0000 (11:56 +0200)]
nv50: let programs use the whole param buffer
Allocation is unnecessary since all uniforms are
uploaded on every constant buffer change anyway.
Christoph Bumiller [Mon, 14 Sep 2009 19:03:19 +0000 (21:03 +0200)]
nv50: add preliminary support for point sprites
Christoph Bumiller [Tue, 15 Sep 2009 09:49:41 +0000 (11:49 +0200)]
nv50: add support for point size per vertex
Christoph Bumiller [Mon, 14 Sep 2009 18:52:52 +0000 (20:52 +0200)]
nv50: add support for light-twoside
Christoph Bumiller [Mon, 14 Sep 2009 18:23:39 +0000 (20:23 +0200)]
nv50: proper linkage between VP and FP
This moves construction of the mapping between VP outputs
and FP inputs into validation.
The map also contains slots for special outputs like clip
distance and point size, so we need to at least merge the
VP related and FP related parts on validation if we want
to support those.
Now we match every single FP input component with results
from the VP and leave those not read out of the map, or
replace those not written by 0 (xyz) or 1 (w).
The bitmap indicating linear interpolants is also filled,
and flat FP inputs are mapped in only after non-flat ones,
as is required.
Furthermore, we can save some space by only fetching VP
attrs we actually use, and avoid wasting any output regs
because of TGSI using less than 4 components.
Christoph Bumiller [Tue, 15 Sep 2009 09:47:00 +0000 (11:47 +0200)]
nv50: move allocation of pc regs
Make use of tgsi_shader_info to determine how many nv50_regs we
need to allocate, whether program uses KIL, or writes DEPR.
Christoph Bumiller [Tue, 15 Sep 2009 09:45:40 +0000 (11:45 +0200)]
nv50: nicer initialization of nv50_regs
Christoph Bumiller [Thu, 10 Sep 2009 20:42:57 +0000 (22:42 +0200)]
nv50: handle CEIL and TRUNC opcodes
Christoph Bumiller [Thu, 10 Sep 2009 20:38:09 +0000 (22:38 +0200)]
nv50: handle SEQ, SGT, SLE, SNE opcodes
Christoph Bumiller [Tue, 15 Sep 2009 09:44:59 +0000 (11:44 +0200)]
nv50: SIN and COS use src0.w for dst.w
Christoph Bumiller [Thu, 10 Sep 2009 14:33:54 +0000 (16:33 +0200)]
nv50: use broadcast TEMP reg in tx_insn
Makes some opcode cases nicer and might reduce the total
nr of TEMPs required, or save some MOVs.
Christoph Bumiller [Tue, 15 Sep 2009 09:44:19 +0000 (11:44 +0200)]
nv50: add nv50_tgsi_insn to handle swizzles safely
Christoph Bumiller [Thu, 10 Sep 2009 11:48:24 +0000 (13:48 +0200)]
nv50: add functions for swizzle resolution
We're going to try to reorder the scalar ops of a vector instr
to accomodate swizzles that would otherwise require us to emit
to an additional TEMP first (like MOV R0.xy, R0.zx).
Christoph Bumiller [Thu, 10 Sep 2009 10:00:37 +0000 (12:00 +0200)]
nv50: extend insn src mask function
Extend its usage to avoiding e.g. emission of negation
instructions in tx_insn for sources we don't need.
Cooper Yuan [Tue, 15 Sep 2009 07:25:47 +0000 (15:25 +0800)]
st/g3dvl: pass color values to softpipe clear function
Cooper Yuan [Tue, 15 Sep 2009 05:16:56 +0000 (13:16 +0800)]
xvmc: Generate new resource ID in _XIDHandler, otherwise it's invalid.
Brian Paul [Mon, 14 Sep 2009 23:48:17 +0000 (17:48 -0600)]
progs/vp: print program and error info when program does not compile
Brian Paul [Mon, 14 Sep 2009 23:32:03 +0000 (17:32 -0600)]
glsl: added some link debug code (disabled)
Brian Paul [Mon, 14 Sep 2009 23:27:47 +0000 (17:27 -0600)]
docs: document linker/preprocessor bug fix
Brian Paul [Mon, 14 Sep 2009 23:24:25 +0000 (17:24 -0600)]
glsl: remove extra #version directives from concatenated shader sources
When we concatenate shaders to do our form of poor-man linking, if there's
multiple #version directives, preprocessing fails. This change disables
the extra #version directives by changing the first two chars to //.
This should help with some Wine issues such as bug 23946.
Zack Rusin [Mon, 14 Sep 2009 23:01:21 +0000 (19:01 -0400)]
st/xorg: add some debugging helpers
Alex Deucher [Mon, 14 Sep 2009 22:05:15 +0000 (18:05 -0400)]
r600: add span support for 1D tiles
1D tile span support for depth/stencil/color/textures
Z and stencil buffers are always tiled, so this fixes
sw access to Z and stencil buffers. color and textures
are currently linear, but this adds span support when we
implement 1D tiling.
This fixes the text in progs/demos/engine and progs/tests/z*
Alex Deucher [Mon, 14 Sep 2009 21:08:26 +0000 (17:08 -0400)]
r600: fix warning
Noticed by rnoland on IRC.
Brian Paul [Mon, 14 Sep 2009 22:01:27 +0000 (16:01 -0600)]
st/mesa: minor whitespace, comment clean-ups
Brian Paul [Mon, 14 Sep 2009 21:47:07 +0000 (15:47 -0600)]
st/xorg: fix ureg_DECL_constant() parameters
This fixes the compilation errors reported in bug 23945 but someone more
familiar with the code should review for correctness and close the bug
report.
José Fonseca [Tue, 1 Sep 2009 09:17:39 +0000 (10:17 +0100)]
scons: Allow to use only the WINDDK headers.
José Fonseca [Tue, 1 Sep 2009 09:11:08 +0000 (10:11 +0100)]
scons: Allow to use MS's DXSDK headers with MinGW.
José Fonseca [Mon, 1 Jun 2009 16:20:29 +0000 (09:20 -0700)]
gallium: Add pipe_transfer_map/unmap inlines.
José Fonseca [Mon, 1 Jun 2009 15:58:34 +0000 (08:58 -0700)]
util: Add _BitScanForward intrinsic's declaration.
It is missing in some Microsoft DDKs.
Brian Paul [Mon, 14 Sep 2009 18:42:07 +0000 (12:42 -0600)]
intel: minor code clean-ups
Brian Paul [Mon, 14 Sep 2009 18:40:53 +0000 (12:40 -0600)]
intel: fix renderbuffer map/unmap regression
Commit
36dd53a3cded9d003ec418732b7fc93c1476aa9b caused a few regressions
because the glReadBuffer() buffer wasn't getting mapped when GL_READ_BUFFER
!= GL_DRAW_BUFFER.
Brian Paul [Fri, 11 Sep 2009 20:49:00 +0000 (14:49 -0600)]
intel: remove unneeded driver function assignments
These default swrast functions are already installed by
_mesa_init_driver_functions().