summaryrefslogtreecommitdiff
path: root/src/mesa/tnl
AgeCommit message (Collapse)Author
2009-04-01swrast: do texture sampling/combining in floating pointBrian Paul
The code's cleaner and a step toward supporting float-valued texture sampling. Some optimizations for common cases can be added and re-enabled...
2009-03-03mesa: include main/dd.h in t_vb_points.c and t_vp_build.cBrian Paul
For some reason makedepend doesn't seem to find the dependency on this header in these two files. Directly including the header is a work-around.
2009-02-28mesa: use fp pointer in _tnl_InvalidateState()Brian Paul
2009-02-28mesa: move #include "bitset.h" out of mtypes.h - not needed in core MesaBrian Paul
2009-02-21mesa: re-org texgen stateBrian Paul
New gl_texgen struct allows quite a bit of code reduction.
2009-02-13mesa: check if TNL state is null in _tnl_free_vertices() to avoid potential ↵Brian Paul
segfault _tnl_free_vertices() is called from several places during context tear-down. Depending on the order in which the swrast, swrast_setup and tnl context is destroyed we could hit a null pointer here. This doesn't seem to be an actual issue with any Mesa drivers, but let's be safe.
2009-02-11mesa: get rid of _math_init()Brian Paul
Only VBO uses the evaluator code so call _math_init_eval() there. Only TNL uses the transform/translate code so call _math_init_transformation() and _math_init_translate9) there. This is a step toward resolving some symbol collisions between Mesa's and gallium's x86 codegen. Have VBO and TNL modules call _math_init_transformation()
2009-02-09mesa: prefix #includes with main/Brian Paul
2009-02-09mesa: merge gallium-0.2 into gallium-master-mergeBrian Paul
Merge commit 'origin/gallium-0.2' into gallium-master-merge Conflicts: Makefile docs/relnotes-7.4.html docs/relnotes.html src/mesa/drivers/dri/i965/brw_wm.h src/mesa/main/imports.c src/mesa/main/mtypes.h src/mesa/main/texcompress.c src/mesa/main/texenvprogram.c src/mesa/main/version.h src/mesa/vbo/vbo_exec_api.c src/mesa/vbo/vbo_save_draw.c
2009-02-06mesa: fix tnl->render_inputs_bitset setup for fragment program texcoordsBrian Paul
Handle the case where there's no per-vertex texcoords but the fragment shader needs texcoords. Fixes piglit shaders/fp-generic/dph test.
2009-01-23mesa: update tnl module for GL_EXT_vertex_array_bgraBrian Paul
Add special case for GLubyte/GL_BGRA color arrays in _tnl_import_array()
2009-01-22Merge commit 'origin/master' into gallium-0.2Alan Hourihane
Conflicts: windows/VC8/mesa/osmesa/osmesa.vcproj windows/VC8/progs/demos/gears.vcproj windows/VC8/progs/progs.sln
2009-01-20Add a comment about _tnl_emit_indexed_vertices_to_buffer.Thomas Hellstrom
2009-01-20tnl: Add a utility to emit indexed vertices to a DMA buffer.Thomas Hellstrom
This utility is useful for hardware that doesn't support HW index buffers. It's a bit inefficient but appears to give a substantial performance gain, as we can emit tri strips that would otherwise be split into triangles.
2009-01-09mesa: Remove _Active and _UseTexEnvProgram flags from fragment programs.Eric Anholt
There was a note in state.c about _Active deserving to die, and there were potential issues with it due to i965 forgetting to set _UseTexEnvProgram. Removing both simplifies things. Reviewed-by: Brian Paul <brianp@vmware.com>
2009-01-07mesa: Remove _Active and _UseTexEnvProgram flags from fragment programs.Eric Anholt
There was a note in state.c about _Active deserving to die, and there were potential issues with it due to i965 forgetting to set _UseTexEnvProgram. Removing both simplifies things. Reviewed-by: Brian Paul <brianp@vmware.com>
2008-12-12Merge commit 'origin/master' into gallium-0.2Alan Hourihane
2008-12-09tnl: Fix zeroing of the 3ub part of a 3ub+1ub attrib pair in SSE.Guillaume Melquiond
Bug #16520.
2008-12-09tnl: Optimize SSE load[23]f_1 since they don't need the identity swizzle.Guillaume Melquiond
SSE movss from memory zeroes out everything above the destination dword, so we get the (a, 0) or (a, 0, 0) result that these functions needed. Bug #16520.
2008-12-09tnl: Fix typo that resulted in fallback from SSE for EMIT_3UB_3F_RGB/BGR.Guillaume Melquiond
Bug #16520
2008-12-09tnl: Avoid undefined input value use in insert_3f_viewport_2().Guillaume Melquiond
Bug #16520.
2008-10-10Merge commit 'origin/master' into gallium-0.2Keith Whitwell
Conflicts: src/mesa/glapi/descrip.mms src/mesa/shader/grammar/descrip.mms
2008-10-08mesa: vertex emit debug code (disabled)Brian Paul
2008-09-29mesa: asst updates for VMSJouk Jansen
2008-09-21Merge branch 'master' into gallium-0.2Keith Whitwell
Conflicts: include/GLES/egl.h include/GLES/egltypes.h src/egl/main/eglconfig.c src/egl/main/eglconfig.h src/glu/sgi/libnurbs/interface/bezierEval.h src/glu/sgi/libnurbs/interface/bezierPatch.h src/glu/sgi/libnurbs/interface/bezierPatchMesh.h src/glu/sgi/libnurbs/internals/dataTransform.h src/glu/sgi/libnurbs/internals/displaymode.h src/glu/sgi/libnurbs/internals/sorter.h src/glu/sgi/libnurbs/nurbtess/definitions.h src/glu/sgi/libnurbs/nurbtess/directedLine.h src/glu/sgi/libnurbs/nurbtess/gridWrap.h src/glu/sgi/libnurbs/nurbtess/monoChain.h src/glu/sgi/libnurbs/nurbtess/monoPolyPart.h src/glu/sgi/libnurbs/nurbtess/monoTriangulation.h src/glu/sgi/libnurbs/nurbtess/partitionX.h src/glu/sgi/libnurbs/nurbtess/partitionY.h src/glu/sgi/libnurbs/nurbtess/polyDBG.h src/glu/sgi/libnurbs/nurbtess/polyUtil.h src/glu/sgi/libnurbs/nurbtess/primitiveStream.h src/glu/sgi/libnurbs/nurbtess/quicksort.h src/glu/sgi/libnurbs/nurbtess/rectBlock.h src/glu/sgi/libnurbs/nurbtess/sampleComp.h src/glu/sgi/libnurbs/nurbtess/sampleCompBot.h src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h src/glu/sgi/libnurbs/nurbtess/sampleCompTop.h src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.h src/glu/sgi/libnurbs/nurbtess/sampledLine.h src/glu/sgi/libnurbs/nurbtess/searchTree.h src/glu/sgi/libnurbs/nurbtess/zlassert.h src/glu/sgi/libutil/error.c src/glu/sgi/libutil/glue.c src/glu/sgi/libutil/gluint.h src/glu/sgi/libutil/project.c src/glu/sgi/libutil/registry.c src/glx/x11/Makefile src/glx/x11/glxclient.h src/glx/x11/glxext.c src/mesa/drivers/dri/ffb/ffb_dd.h src/mesa/drivers/dri/ffb/ffb_points.h src/mesa/drivers/dri/gamma/gamma_context.h src/mesa/drivers/dri/gamma/gamma_macros.h src/mesa/drivers/dri/i810/i810context.h src/mesa/drivers/dri/r128/r128_dd.h src/mesa/drivers/dri/r128/r128_tex.h src/mesa/drivers/dri/tdfx/tdfx_dd.h src/mesa/drivers/x11/xm_buffer.c src/mesa/glapi/glapi.c src/mesa/main/dispatch.c src/mesa/main/state.c src/mesa/main/texstate.c src/mesa/shader/arbprogparse.c src/mesa/shader/arbprogram.c src/mesa/shader/nvfragparse.c src/mesa/shader/nvprogram.c src/mesa/shader/shader_api.c src/mesa/sources src/mesa/swrast/s_aaline.c src/mesa/swrast/s_aaline.h src/mesa/swrast/s_aatriangle.h src/mesa/swrast/s_accum.c src/mesa/swrast/s_alpha.h src/mesa/swrast/s_bitmap.c src/mesa/swrast/s_blend.h src/mesa/swrast/s_context.c src/mesa/swrast/s_copypix.c src/mesa/swrast/s_depth.c src/mesa/swrast/s_depth.h src/mesa/swrast/s_drawpix.c src/mesa/swrast/s_drawpix.h src/mesa/swrast/s_feedback.c src/mesa/swrast/s_feedback.h src/mesa/swrast/s_fog.h src/mesa/swrast/s_lines.h src/mesa/swrast/s_logic.h src/mesa/swrast/s_masking.h src/mesa/swrast/s_points.c src/mesa/swrast/s_points.h src/mesa/swrast/s_readpix.c src/mesa/swrast/s_span.c src/mesa/swrast/s_span.h src/mesa/swrast/s_stencil.h src/mesa/swrast/s_texcombine.c src/mesa/swrast/s_texcombine.h src/mesa/swrast/s_texfilter.c src/mesa/swrast/s_texfilter.h src/mesa/swrast/s_texstore.c src/mesa/swrast/s_triangle.c src/mesa/swrast/s_triangle.h src/mesa/swrast/s_zoom.h src/mesa/swrast_setup/ss_context.c src/mesa/swrast_setup/ss_triangle.h src/mesa/tnl/t_draw.c src/mesa/tnl/t_vb_light.c src/mesa/tnl/t_vertex_generic.c src/mesa/tnl/t_vertex_sse.c src/mesa/tnl/t_vp_build.h src/mesa/tnl/tnl.h src/mesa/x86/common_x86.c
2008-09-21mesa: move fixed function vertex program builder from tnl to core mesaKeith Whitwell
Also unify caching of fragment and vertex programs in shader/prog_cache.c` Brought across from gallium-0.2
2008-09-21mesa: move rastpos helper to tnlKeith Whitwell
2008-09-18mesa: fix null ptr deref bug in _tnl_InvalidateState(), bug 15834Brian Paul
2008-09-18mesa: prefix a bunch of #include lines with "main/".Brian Paul
This is another step toward removing a whole bunch of -I flags from the cc commands. Still need to address driver code...
2008-09-11tree buildsAlan Hourihane
2008-09-11Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/mesa into ↵Alan Hourihane
gallium-0.2 Conflicts: src/mesa/drivers/dri/i915/intel_ioctl.c src/mesa/main/texstore.c src/mesa/tnl/t_vp_build.c src/mesa/vbo/vbo_exec_draw.c
2008-09-11Merge branch 'gallium-0.1' into gallium-0.2Keith Whitwell
A first attempt at moving gallium onto a branch directly off master... It will be interesting to see how much work this takes to get running. Have resolved the conflicts semi-arbitarily, not compiled or tested. Conflicts: .gitignore Makefile configs/config.mgw configs/darwin configs/darwin-x86ppc configs/default configs/freebsd-dri configs/linux-dri configs/linux-dri-xcb configs/linux-fbdev configs/linux-static configs/linux-x86-64-static configs/linux-x86-static doxygen/Makefile include/GL/gl.h progs/demos/Makefile progs/demos/descrip.mms progs/demos/texenv.c progs/egl/.gitignore progs/egl/Makefile progs/glsl/.gitignore progs/glsl/Makefile progs/glsl/convolutions.c progs/samples/Makefile.mgw progs/tests/.gitignore progs/trivial/.gitignore progs/trivial/point-param.c progs/trivial/tri.c progs/xdemos/.gitignore progs/xdemos/glthreads.c src/egl/drivers/demo/Makefile src/egl/drivers/dri/Makefile src/egl/main/Makefile src/glu/Makefile src/glu/sgi/Makefile src/glu/sgi/Makefile.mgw src/glut/glx/Makefile.mgw src/glut/os2/WarpWin.cpp src/glut/os2/glut_cindex.cpp src/glut/os2/glut_gamemode.cpp src/glut/os2/glut_win.cpp src/glut/os2/glut_winmisc.cpp src/glut/os2/os2_glx.cpp src/glut/os2/os2_menu.cpp src/glut/os2/os2_winproc.cpp src/glw/Makefile src/glx/x11/dri_glx.c src/glx/x11/glxext.c src/mesa/Makefile src/mesa/Makefile.mgw src/mesa/descrip.mms src/mesa/drivers/beos/Makefile src/mesa/drivers/common/descrip.mms src/mesa/drivers/common/driverfuncs.c src/mesa/drivers/directfb/Makefile src/mesa/drivers/dri/Makefile.template src/mesa/drivers/dri/common/dri_bufmgr.c src/mesa/drivers/dri/common/dri_bufmgr.h src/mesa/drivers/dri/common/dri_util.c src/mesa/drivers/dri/common/extension_helper.h src/mesa/drivers/dri/common/mmio.h src/mesa/drivers/dri/common/utils.c src/mesa/drivers/dri/common/utils.h src/mesa/drivers/dri/glcore/Makefile src/mesa/drivers/dri/i810/i810screen.c src/mesa/drivers/dri/i915/intel_ioctl.c src/mesa/drivers/dri/i915/intel_ioctl.h src/mesa/drivers/dri/i915/intel_screen.c src/mesa/drivers/dri/i915/server/i830_common.h src/mesa/drivers/dri/i915/server/i830_dri.h src/mesa/drivers/dri/i965/intel_screen.c src/mesa/drivers/dri/i965/server/i830_common.h src/mesa/drivers/dri/i965/server/i830_dri.h src/mesa/drivers/dri/mach64/mach64_screen.c src/mesa/drivers/dri/nouveau/nouveau_context.h src/mesa/drivers/dri/nouveau/nouveau_fifo.c src/mesa/drivers/dri/nouveau/nouveau_fifo.h src/mesa/drivers/dri/nouveau/nouveau_screen.c src/mesa/drivers/dri/nouveau/nouveau_screen.h src/mesa/drivers/dri/r128/r128_tex.h src/mesa/drivers/dri/savage/savageioctl.h src/mesa/drivers/fbdev/Makefile src/mesa/drivers/osmesa/Makefile src/mesa/drivers/osmesa/descrip.mms src/mesa/drivers/x11/Makefile src/mesa/drivers/x11/descrip.mms src/mesa/drivers/x11/xm_dd.c src/mesa/glapi/glapi.c src/mesa/glapi/glthread.c src/mesa/main/api_validate.c src/mesa/main/attrib.c src/mesa/main/bufferobj.c src/mesa/main/bufferobj.h src/mesa/main/buffers.c src/mesa/main/config.h src/mesa/main/context.c src/mesa/main/descrip.mms src/mesa/main/drawpix.c src/mesa/main/enums.c src/mesa/main/fbobject.c src/mesa/main/glheader.h src/mesa/main/imports.c src/mesa/main/mipmap.c src/mesa/main/mm.c src/mesa/main/mm.h src/mesa/main/mtypes.h src/mesa/main/points.c src/mesa/main/sources src/mesa/main/state.c src/mesa/main/texcompress_fxt1.c src/mesa/main/texenvprogram.c src/mesa/main/texobj.c src/mesa/main/texstate.c src/mesa/main/texstore.c src/mesa/math/descrip.mms src/mesa/shader/arbprogram.c src/mesa/shader/descrip.mms src/mesa/shader/prog_execute.c src/mesa/shader/prog_statevars.c src/mesa/shader/prog_statevars.h src/mesa/shader/prog_uniform.c src/mesa/shader/program.c src/mesa/shader/program.h src/mesa/shader/shader_api.c src/mesa/shader/slang/descrip.mms src/mesa/shader/slang/library/slang_vertex_builtin_gc.h src/mesa/sources src/mesa/swrast/descrip.mms src/mesa/swrast/s_drawpix.c src/mesa/swrast/s_fragprog.c src/mesa/swrast/s_readpix.c src/mesa/swrast/s_span.c src/mesa/swrast_setup/descrip.mms src/mesa/tnl/descrip.mms src/mesa/tnl/t_context.h src/mesa/tnl/t_vp_build.c src/mesa/tnl/tnl.h src/mesa/vbo/descrip.mms src/mesa/vbo/vbo_context.c src/mesa/vbo/vbo_exec_array.c src/mesa/x86-64/xform4.S src/mesa/x86/rtasm/x86sse.c src/mesa/x86/rtasm/x86sse.h windows/VC6/progs/glut/glut.dsp windows/VC7/mesa/gdi/gdi.vcproj windows/VC7/mesa/glu/glu.vcproj windows/VC7/mesa/mesa.sln windows/VC7/mesa/mesa/mesa.vcproj windows/VC7/mesa/osmesa/osmesa.vcproj windows/VC7/progs/glut/glut.vcproj windows/VC8/mesa/gdi/gdi.vcproj windows/VC8/mesa/glu/glu.vcproj windows/VC8/mesa/mesa.sln windows/VC8/mesa/mesa/mesa.vcproj windows/VC8/progs/glut/glut.vcproj
2008-08-28mesa: bump MAX_INSN to 350Brian Paul
2008-07-24mesa: Prefix main includes with dir to avoid conflicts.José Fonseca
Some of the headers in src/mesa/main have pretty common names which easily conflict with third-party code, e.g. config.h
2008-07-01init machine->Samplers (fixes vertex program texture fetches)Brian Paul
2008-06-16Compute/setup fog coordinates even if vertex program is enabled.H. Verbeet
Only when fog's enabled, of course. In the usual case, this is just a pass-through operation.
2008-06-16Don't compute vertex fog when fragment program is active.H. Verbeet
2008-06-02[t_vp_build] Fix refcounting-related memory leakNicolai Haehnle
This memory leak is identical to the earlier one in texenvprogram. Fixed by not creating an additional reference to new programs in cache_item. On top of that, remove some duplicated state setting.
2008-05-16fix merge collisionBrian Paul
2008-05-16free(key) in _tnl_UpdateFixedFunctionProgram()Shunichi Fuji
2008-05-16Fix memory leak in _tnl_UpdateFixedFunctionProgramShunichi Fuji
2008-05-07fix refcounting bugs in tnl/tex program cachesBrian Paul
2008-05-06implement full reference counting for vertex/fragment programsBrian
Use _mesa_reference_vert/fragprog() wherever we assign program pointers. Fixes a memory corruption bug found with glean/api2 test.
2008-04-23glcore: drop outdated sources files intented for xorgGeorge Sapountzis
2008-03-19s/x86_init_func/x86_init_func_size (fixes bug 15119)Brian
2008-03-19set outputs_safe to 0 as it's possible for the code generationAlan Hourihane
to slip over the allocated memory for the vb. pull in sse fixes from gallium-0.1
2008-03-19set outputs_safe to 0 as it's possible for the code generationAlan Hourihane
to slip over the allocated memory for the vb.
2008-03-19remove redundant initAlan Hourihane
2008-02-25Remove files of unsupported build systems.José Fonseca
2008-01-02t_vp_build: fix temporary register allocation to minimise the allocationsHans de Goede