Age | Commit message (Collapse) | Author | |
---|---|---|---|
2009-11-10 | mesa: new vars: oldDrawFb, oldReadFb in _mesa_BindFramebufferEXT() | brian | |
2009-11-10 | mesa: rename vars in _mesa_BindFramebufferEXT() | brian | |
2009-11-10 | mesa: added comment for check_begin_texture_render() | brian | |
2009-11-10 | Merge remote branch 'origin/mesa_7_6_branch' | Eric Anholt | |
2009-11-10 | i965: avoid memsetting all the BRW_WM_MAX_INSN arrays for every compile. | Eric Anholt | |
For an app that's blowing out the state cache, like sauerbraten, the memset of the giant arrays ended up taking 11% of the CPU even when only a "few" of the entries got used. With this, the WM program compile drops back down to 1% of CPU time. Bug #24981 (bisected to BRW_WM_MAX_INSN increase). | |||
2009-11-10 | i965: Add a note explaining the data cache domain. | Eric Anholt | |
2009-11-10 | i965: Unalias src/dst registers for SGE and friends. | Eric Anholt | |
Fixes piglit vp-sge-alias test, and the googleearth ground shader. \o/ Bug #22228 | |||
2009-11-10 | i965: Allow use of PROGRAM_LOCAL constants in ARB_vp. | Eric Anholt | |
Fixes piglit arl.vp. | |||
2009-11-10 | slang: Fix return value check. | Michal Krol | |
2009-11-10 | slang: Check OOM conditions for alloc_node_storage(). | Michal Krol | |
2009-11-10 | slang: Check return value from new_instruction(). | Michal Krol | |
2009-11-10 | slang: Fix signed/unsigned int handling in _slang_free_temp(). | Michal Krol | |
2009-11-10 | slang: Handle OOM condition in new_instruction(). | Michal Krol | |
2009-11-09 | r600/r700: typo, fix mask of DB_ALPHA_TO_MASK | Jerome Glisse | |
2009-11-09 | r600: don't emit htile regs | Alex Deucher | |
These are needed for HiZ which is not currently used and the _BASE reg requires a reloc which is not currently supported in the drm. | |||
2009-11-09 | r600: rework DB render setup | Alex Deucher | |
- consolidate DB render setup - only enable perfect ZPASS counts and cull disable when OQ is active - enable early Z | |||
2009-11-09 | r600: don't emit htile regs | Alex Deucher | |
These are needed for HiZ which is not currently used and the _BASE reg requires a reloc which is not currently supported in the drm. | |||
2009-11-09 | r600: add missing ZPASS setup bits for r7xx+ | Alex Deucher | |
2009-11-07 | prog parse: Handle GL_VERTEX_PROGRAM_ARB in glLoadProgramNV | Ian Romanick | |
2009-11-07 | prog parse: Handle GL_VERTEX_PROGRAM_NV in glProgramStringARB | Ian Romanick | |
Handle both NV vertex programs and NV vertex state programs passed to glProgramStringARB. | |||
2009-11-07 | prog parse: Handle GL_FRAGMENT_PROGRAM_ARB in glLoadProgramNV | Ian Romanick | |
2009-11-07 | prog parse: Handle GL_FRAGMENT_PROGRAM_NV in glProgramStringARB | Ian Romanick | |
2009-11-07 | mesa: move code after decl | brian | |
Fixes bug 24967. | |||
2009-11-06 | i965: Use Compr4 instruction compression mode on G4X and newer. | Eric Anholt | |
No statistically significant performance difference at n=3 with either openarena or my GL demo, but cutting program size seems like a good thing to be doing for the hypothetical app that has a working set near icache size. | |||
2009-11-06 | i965: Share min/max between brw_wm_emit.c and brw_wm_glsl.c | Eric Anholt | |
2009-11-06 | i965: Share emit_fb_write() between brw_wm_emit.c and brw_wm_glsl.c | Eric Anholt | |
This should fix issues with antialiased lines in GLSL. | |||
2009-11-06 | i965: Share most of the WM functions between brw_wm_glsl.c and brw_wm_emit.c | Eric Anholt | |
The PINTERP code should be faster for brw_wm_glsl.c now since brw_wm_emit.c's had been improved, and pixel_w should no longer stomp on a neighbor to dst. | |||
2009-11-06 | i965: Share math functions between brw_wm_glsl.c and brw_wm_emit.c. | Eric Anholt | |
2009-11-06 | i965: Share the sop opcodes between brw_wm_glsl.c and brw_wm_emit.c. | Eric Anholt | |
2009-11-06 | i965: Share OPCODE_MAD between brw_wm_glsl.c and brw_wm_emit.c | Eric Anholt | |
2009-11-06 | i965: Share the DP3, DP4, and DPH between brw_wm_glsl.c and brw_wm_emit.c | Eric Anholt | |
2009-11-06 | i965: Add generic GLSL code for unaliasing a 3-arg opcode, and share LRP code. | Eric Anholt | |
2009-11-06 | i965: Use a normal alu1 emit for OPCODE_TRUNC. | Eric Anholt | |
2009-11-06 | i965: Share basic ALU ops between brw_wm_glsl and brw_wm_emit.c | Eric Anholt | |
This drops support for get_src_reg_imm in these, but the prospect of getting brw_wm_pass*.c onto our GLSL path is well worth some temporary pain. | |||
2009-11-06 | i965: Collect GLSL src/dst regs up in generic code. | Eric Anholt | |
This matches brw_wm_emit.c, which we'll be using shortly. There's a possible penalty here in that we'll allocate registers for unused channels, since we aren't doing ref tracking like brw_wm_pass*.c does. However, my measurements on GM965 don't show any for either OA or UT2004 with the GLSL path forced. | |||
2009-11-06 | mesa: Reduce the source channels considered in optimization passes. | Eric Anholt | |
Depending on the writemask or the opcode, we can often trim the source channels considered used for dead code elimination. This saves actual instructions on 965 in the non-GLSL path for glean glsl1, and cleans up the writemasks of programs even further. | |||
2009-11-06 | mesa: Fix remove_instructions to successfully remove when removeFlags[0]. | Eric Anholt | |
This fixes the dead code elimination to work on the particular code mentioned in the previous commit. | |||
2009-11-06 | mesa: Add an optimization path to remove use of pointless MOVs. | Eric Anholt | |
GLSL code such as: vec4 result = {0, 1, 0, 0}; gl_FragColor = result; emits code like: 0: MOV TEMP[0], CONST[0]; 1: MOV OUTPUT[1], TEMP[0]; and this replaces it with: 0: MOV TEMP[0], CONST[0]; 1: MOV OUTPUT[1], CONST[0]; Even when the dead code eliminator fails to clean up a now-useless MOV instruction (since it doesn't do live/dead ranges), this should at reduce dependencies. | |||
2009-11-06 | mesa: Fix up the remove_dead_code pass to operate on a channel basis. | Eric Anholt | |
This cleans up a bunch of instructions in GLSL programs to have limited writemasks, which would translate to wins in shaders that hit the i965 brw_wm_glsl.c path by depending less on in-driver optimizations. It will also help hit other optimization passes I'm looking at. | |||
2009-11-06 | intel: better front color buffer test in intelClear() | Brian Paul | |
2009-11-06 | i965: Always pass the size argument to brw_cache_data. | Eric Anholt | |
This keeps the individual state files from having to export their structures for brw_state_cache initialization. | |||
2009-11-06 | intel: Finish removing the fallback code for bug #16697. | Eric Anholt | |
I fixed it properly as of 7216679c1998b49ff5b08e6b43f8d5779415bf54. | |||
2009-11-06 | intel: Don't validate in a texture image used as a render target. | Eric Anholt | |
Otherwise, we could lose track of rendering to that image, which could easily happen during mipmap generation. | |||
2009-11-06 | mesa: Attempt to pair up Driver.RenderTexture and FinishRenderTexture() | Eric Anholt | |
This is probably not 100% complete (bind vs unbind may still not pair up exactly), but it should help out drivers which are relying on FinishRenderTexture to be called when we're done rendering to a particular texture level, not just when we're done rendering to the object at all. This is the case for the one consumer of FinishRenderTexture() so far: the gallium state tracker. Noticed when trying to make use of FRT() in the intel driver. | |||
2009-11-06 | intel: Clean up some extra struct indirection in finalize. | Eric Anholt | |
2009-11-06 | intel: Use _mesa_get_current_tex_object() to clean up TFP path. | Eric Anholt | |
2009-11-06 | intel: Remove duplicated arguments from intel_miptree_match_image(). | Eric Anholt | |
2009-11-06 | i965: Remove an XXX comment for testing some code that seems to work. | Eric Anholt | |
2009-11-06 | intel: Remove obsolete comment about GEM in the spans code. | Eric Anholt | |
2009-11-06 | intel: Use PIPE_CONTROL on gen4 hardware for doing pipeline flushing. | Eric Anholt | |
This should do all the things that MI_FLUSH did, but it can be pipelined so that further rendering isn't blocked on the flush completion unless necessary. |