summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300/r300_state.c
AgeCommit message (Collapse)Author
2009-06-11r300: send only RS_IP_* regs that we are going to useMaciej Cencora
2009-06-11r300: fix RS setup when no colors and textures are sent to FPMaciej Cencora
RS_COL_FMT field is part of RS_IP_* reg not RS_INST_*
2009-06-11r300: fix a GPU lock upMaciej Cencora
Sending from VAP more texture coordinates than RS expects results in GPU hang. Fixes BumpSelfShadow from DirectX8 SDK.
2009-06-07r300: remove unused codeMaciej Cencora
2009-06-07r300: prepare for different vertex data type supportMaciej Cencora
2009-06-07r300: always pass 4 color components to RS unitMaciej Cencora
Even if we don't pass all 4 color components to vertex shader unit, the vertex program can generate the missing components.
2009-05-24radeon: Remove drawable & readable from radeon_dri_mirrorNicolai Hähnle
The duplication of state data caused a crash due to double-free on destruction of context, because a variable wasn't correctly null'ed out. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-05-18radeon: fix DRI1 cmd streamJerome Glisse
2009-05-16r300: cleanup vertex program related functionsMaciej Cencora
- move vertex program related functions to r300_vertprog.c - use _mesa_bitcount instead of self-made bit_count function - remove duplicated field in r300_vertex_shader_fragment.body union - rename r300_vertex_shader_fragment to r300_vertex_shader_hw_code - rename r300_vertex_program field native to error - remove unnecessary r300_vertex_shader_state structure - remove unused r300_vertex_program and r300_vertex_program_cont fields - remove disabled code
2009-05-16r300: minor code movementMaciej Cencora
2009-05-16r300: more cleanupMaciej Cencora
- remove unnecessary r300TranslateFragmentShader call from r300UpdateShaderStates (it is already called in r300UpdateShaders) - remove unnecessary null ptr checks
2009-05-16r300: move some code to common pathMaciej Cencora
2009-05-16r300: rename functionsMaciej Cencora
Be consistent with function naming: use Setup/Emit names for functions that modify hardware state
2009-05-16r300: software fallbacking handling rewriteMaciej Cencora
Until now falling back to software rasterizer worked only for TCL enabled cards. For non TCL cards we used to plug our rendering functions in r300InitSwtcl, and we had never restored original functions for software rasterizer.
2009-05-16r300: remove unnecessary switch casesMaciej Cencora
2009-05-16r300: further cleanupMaciej Cencora
- move extensions init into seperate function - move options handling into seperate function - create new structure to hold options values - use context->options.hw_tcl_enabled field instead of global hw_tcl_on and future_hw_tcl_on variables
2009-05-14r300: don't send now forbidden register to kernel when with memory managerJerome Glisse
2009-05-13Remove subpixel offset from viewportOwen W. Taylor
Remove an eigth-pixel offset of the viewport inherited from R100 code. This seems not to be necessary and causes blurring when sampling textures 1:1. https://bugs.freedesktop.org/show_bug.cgi?id=20340
2009-05-12radeon: glReadBuffer set _NEW_BUFFERS, not _NEW_PIXELJerome Glisse
This was broken with last merge see 62043b27575c378c027251316421e4699f461108 for explanations
2009-05-10Merge commit 'origin/master' into radeon-rewriteJerome Glisse
Conflicts: src/mesa/drivers/dri/r200/r200_state.c src/mesa/drivers/dri/r300/r300_context.h src/mesa/drivers/dri/r300/r300_fragprog.c src/mesa/drivers/dri/r300/r300_state.c src/mesa/drivers/dri/r300/r300_texmem.c src/mesa/drivers/dri/r300/r300_texstate.c src/mesa/drivers/dri/r300/r500_fragprog.c src/mesa/drivers/dri/radeon/radeon_screen.c src/mesa/drivers/dri/radeon/radeon_state.c
2009-05-07r300: moar cleanupMaciej Cencora
- remove unused r300UpdateClipPlanes function - move reg definition to r300_reg.h - remove incorrect forward definition of tnl_UpdateFixedFunctionProgram and add proper #include - remove unreachable code
2009-05-01mesa: in glReadBufer() set _NEW_BUFFERS, not _NEW_PIXELBrian Paul
Since GL_READ_BUFFER is historically part of the gl_pixel_attrib group it made sense to signal changes with _NEW_PIXEL. But now with FBOs it's also part of the framebuffer state. Now _NEW_PIXEL strictly indicates pixels transfer state changes. This change avoids framebuffer state validation when any random bit of pixel-transfer state is set. DRI drivers updated too: don't check _NEW_COLOR when updating framebuffer state. I think that was just copied from the Xlib driver because we care about dither enable/disable state there.
2009-05-01Merge branch 'const-buffer-changes'Brian Paul
Conflicts: src/mesa/drivers/dri/i965/brw_curbe.c src/mesa/drivers/dri/i965/brw_vs_emit.c src/mesa/drivers/dri/i965/brw_wm_glsl.c
2009-04-30r300: Increase reference count of texture objects referenced by current state.Michel Dänzer
Fixes a use-after-free reported in http://bugs.freedesktop.org/show_bug.cgi?id=20539, so this possibly fixes that bug. It has been confirmed to fix http://bugs.freedesktop.org/show_bug.cgi?id=17895 .
2009-04-27r300: fix point size clamping when point is not attenuatedMaciej Cencora
2009-04-27r300: always route 4 texcoord components to RSMaciej Cencora
Routing <4 components may lead to lock up. Thanks to Alex Deucher for suggestion.
2009-04-27r300: remove unnecessary function callsMaciej Cencora
ae_create_context is called by vbo_CreateContext ae_invalidate_state is called by vbo_InvalidateState
2009-04-27r300: rename stateMaciej Cencora
According to r300_reg.h from radeon drm module 0x4f30 is ZB_ZMASK_OFFSET. Also cleanup as trailing whitespaces.
2009-04-27r300: remove unnecessary function callsMaciej Cencora
r300SetEarlyZState is called during r300UpdateShaderStates which is called for every rendering operation.
2009-04-27r300: always emit output insts after all KIL instsMaciej Cencora
2009-04-22r200/r300/r500: add _NEW_PROGRAM_CONSTANTS flagBrian Paul
Make sure we detect constant buffer changes indicated by the new flag. Should be able to remove _NEW_PROGRAM (and _NEW_MODELVIEW, _NEW_LIGHT, etc) from several places (someday.
2009-04-19r300: move common fp functions to seperate fileMaciej Cencora
2009-04-19r300: more prepare for mergeMaciej Cencora
2009-04-19r300: further r300/r500 merge preparationMaciej Cencora
2009-04-19r300: merge r300/r500 fragment program compiler structureMaciej Cencora
2009-04-19r300: merge r300/r500 fragment program structuresMaciej Cencora
2009-04-19r300: r300/r500 fp shader merge WIPMaciej Cencora
2009-04-19r300: general cleanupMaciej Cencora
- remove unused fields - remove unused defines and macros - flatten one structure
2009-04-19r300: remove unnecessary forward function declarationMaciej Cencora
2009-04-17r300: cleanup frag prog setup a littleMaciej Cencora
Use proper fields for marking if fp is translated, and if is translated succesfully. Now if fp gets translated (even unsuccesfully) fp->translated is true. If the translation failed (i.e. because we exceeded limit of maximum texture indirections) the fp->error is set. With a little updated fallback function it prevents non native fragment programs from beeing translated with every frame (the translation would fail anyway so there's no point to try again). Also implement IsProgramNative function for GL_FRAGMENT_PROGRAM_ARB (it should give some performance boost in apps that checks if program is native and falls back to simpler shader to meet hw limits if necessary) and cleanup indentation (remove whitespaces on empty lines).
2009-04-17r300: update r500 path for reordered WPOS and FOG fp attributesMaciej Cencora
Report and regression testing by Fabio Pedretti.
2009-04-09r300: reorder fog coordinate and WPOS fp attributesMaciej Cencora
HW TCL path currently assumed fog, WPOS order. The order was inverted for SW TCL path. This hopefully fixes rest of fog and WPOS related bugs. Additionally fix some indentation, don't route unnecessary components of fog coordinates for performance reasons and simplify vertex attribute emitting for SW TCL path.
2009-03-24radeon/r200/r300: fix warningsDave Airlie
2009-03-23raedon/r200/r300: mega-FBO commits.Dave Airlie
Re work depth issues. Do a lot more FBO abstactions fixup depth/stencil buffer interactions
2009-03-21r300: fix viewport inversion for FBOsDave Airlie
2009-03-20Merge remote branch 'main/master' into radeon-rewriteDave Airlie
Conflicts: src/mesa/drivers/dri/r300/r300_cmdbuf.c src/mesa/drivers/dri/r300/r300_state.c src/mesa/drivers/dri/r300/r300_swtcl.c src/mesa/drivers/dri/r300/radeon_ioctl.c src/mesa/drivers/dri/radeon/radeon_screen.c
2009-03-09r300: move firevertices out into the main place its needed.Dave Airlie
This fixes a hang on context destruction on rs690
2009-03-06r300: fix depth write regression (found by Nicolai Haehnle)Maciej Cencora
Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
2009-03-06r300: enable EXT_fog_coord extensionMaciej Cencora
Remove fixed function fog setup. Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
2009-03-06r300: rewrite and hopefully simplify RS setupMaciej Cencora
Testing and regression fixes by Markus Amsler Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>