summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker
Commit message (Collapse)AuthorAgeFilesLines
* Move the remaining format pf_get_* functions to u_format.h.Michal Krol2009-12-174-19/+20
| | | | | Previously they depended on format blocks, but after removing those they started depending on format encoding.
* Merge branch 'master' into pipe-format-simplifyMichal Krol2009-12-1713-182/+92
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/draw/draw_pipe_aaline.c src/gallium/auxiliary/draw/draw_pipe_pstipple.c src/gallium/auxiliary/util/u_blit.c src/gallium/auxiliary/util/u_gen_mipmap.c src/gallium/auxiliary/util/u_surface.c src/gallium/auxiliary/vl/vl_mpeg12_mc_renderer.c src/gallium/drivers/cell/ppu/cell_texture.c src/gallium/drivers/llvmpipe/lp_texture.c src/gallium/drivers/r300/r300_emit.c src/gallium/drivers/r300/r300_texture.c src/gallium/drivers/softpipe/sp_texture.c src/gallium/drivers/softpipe/sp_tile_cache.c src/gallium/drivers/svga/svga_state_vs.c src/gallium/include/pipe/p_format.h src/gallium/state_trackers/dri/dri_drawable.c src/gallium/state_trackers/egl/egl_surface.c src/gallium/state_trackers/python/p_device.i src/gallium/state_trackers/python/st_softpipe_winsys.c src/gallium/state_trackers/vega/api_filters.c src/gallium/state_trackers/vega/image.c src/gallium/state_trackers/vega/mask.c src/gallium/state_trackers/vega/paint.c src/gallium/state_trackers/vega/renderer.c src/gallium/state_trackers/vega/vg_tracker.c src/gallium/state_trackers/xorg/xorg_crtc.c src/gallium/state_trackers/xorg/xorg_dri2.c src/gallium/state_trackers/xorg/xorg_exa.c src/gallium/state_trackers/xorg/xorg_renderer.c src/gallium/state_trackers/xorg/xorg_xv.c src/gallium/state_trackers/xorg/xvmc/surface.c src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c src/gallium/winsys/drm/radeon/core/radeon_buffer.c src/gallium/winsys/egl_xlib/sw_winsys.c src/gallium/winsys/g3dvl/xlib/xsp_winsys.c src/gallium/winsys/gdi/gdi_llvmpipe_winsys.c src/gallium/winsys/gdi/gdi_softpipe_winsys.c src/gallium/winsys/xlib/xlib_cell.c src/gallium/winsys/xlib/xlib_llvmpipe.c src/gallium/winsys/xlib/xlib_softpipe.c src/mesa/state_tracker/st_cb_fbo.c src/mesa/state_tracker/st_cb_texture.c src/mesa/state_tracker/st_texture.c
| * Merge branch 'mesa_7_7_branch'Brian Paul2009-12-113-136/+0
| |\ | | | | | | | | | | | | | | | Conflicts: src/gallium/state_trackers/xorg/xorg_xv.c src/mesa/drivers/dri/intel/intel_span.c
| | * mesa: Move OES_read_format support from drivers into the core.Eric Anholt2009-12-093-136/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The assertion is that the correct read type to be using is the native type of the underlying read renderbuffer. For some fallback paths, this may be worse than GL_RGBA/GL_UNSIGNED_BYTE for reads today, but it gets all drivers the expected GL_BGRA/GL_UNSIGNED_BYTE for ARGB8888 or GL_BGR//GL_UNSIGNED_SHORT_5_6_5_REV for rgb565 with no work. This fixes the intel (and other) DRI drivers to report read formats that should hit blit PBO readpixels paths.
| * | Merge branch 'gallium-strict-aliasing'Roland Scheidegger2009-12-081-1/+3
| |\ \
| | * | gallium: fix more potential strict aliasing issuesRoland Scheidegger2009-12-081-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In particular, gcc man page warns that union a_union { int i; double d; }; int f() { double d = 3.0; return ((union a_union *) &d)->i; } "might" not be ok (why not?), even though it doesn't seem to generate any warnings. Hence don't use this and do the extra step to actually use assignment to get the values in/out of the union. This changes parts of 3456f9149b3009fcfce80054759d05883d3c4ee5.
| | * | gallium/util: fix util_color_[un]pack[-ub] to be strict aliasing safeRoland Scheidegger2009-12-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | use pointer to union instead of void pointer. gcc complained a lot, depending what the pointer originally actually was. Looks like it's in fact maybe legal to cast for instance uint pointers to union pointers as long as union contains a uint type, hence use this with some callers, other just use union util_color in the first place.
| * | | st/mesa: remove debug codeBrian Paul2009-12-071-1/+1
| | | |
| * | | st/mesa: negate DDY to match GL semanticsBrian Paul2009-12-071-1/+20
| | | | | | | | | | | | | | | | | | | | This fixes the regression from commit 884007546c98b1779bf266ec5111b1e7e2b68b2e Fixes bug 25456 (piglit derivs regression).
| * | | st/mesa: fix up commentBrian Paul2009-12-071-2/+5
| | | |
| * | | st/mesa: Prefer alpha-less formats for RGB textures.Michel Dänzer2009-12-051-4/+32
| | | | | | | | | | | | | | | | | | | | This can e.g. increase the chance of being able to accelerate glCopyTex(Sub)Image from an alpha-less renderbuffer.
| * | | Merge branch 'gallium-noblocks'Roland Scheidegger2009-12-046-38/+32
| |\ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/state_trackers/xorg/xorg_exa.c
| | * | | gallium: interface cleanups, remove nblocksx/y from pipe_texture and moreRoland Scheidegger2009-11-306-38/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes nblocksx, nblocksy arrays from pipe_texture (can be recalculated if needed). Furthermore, pipe_format_block struct is gone completely (again, contains just derived state). nblocksx, nblocksy, block are also removed from pipe_transfer, together with the format enum (can be obtained from the texture associated with the transfer).
| * | | | Merge branch 'mesa_7_7_branch'Jakob Bornecrantz2009-12-021-1/+1
| |\ \ \ \ | | |_|/ / | |/| | / | | | |/ | | |/|
| | * | st/mesa: updated emit_swz() commentBrian Paul2009-12-011-1/+1
| | | |
* | | | s/desc->type/desc->channel[0].type/Michal Krol2009-12-171-3/+3
| | | |
* | | | Revert "Simplify the redundant meaning of format layout."Michal Krol2009-12-091-2/+3
| | | | | | | | | | | | | | | | This reverts commit eb926ddf9eee1095c7fc12013f0b8375bbaeca6f.
* | | | Simplify the redundant meaning of format layout.Michal Krol2009-12-081-3/+2
| | | | | | | | | | | | | | | | | | | | We really just need to know whether the format is compressed or not. For more detailed information format colorspace should suffice.
* | | | Remove remaining pipe format utility functions.Michal Krol2009-12-081-34/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Depricate pf_type(), pf_size_*(), pf_layout() and pf_exp2(). Map depricated PIPE_FORMAT_TYPE to new UTIL_FORMAT_ values: UNKNOWN = TYPE_VOID UNORM = TYPE_UNSIGNED + LAYOUT_ARITH SNORM = TYPE_SIGNED + LAYOUT_ARITH FIXED = TYPE_FIXED FLOAT = TYPE_FLOAT USCALED = TYPE_UNSIGNED + LAYOUT_ARRAY SSCALED = TYPE_SIGNED + LAYOUT_ARRAY SRGB = TYPE_COLORSPACE_SRGB
* | | | Remove pf_swizzle_* internal macros.Michal Krol2009-12-031-4/+7
| | | |
* | | | Move pf_get_component_bits() to u_format auxiliary module.Michal Krol2009-12-033-28/+22
| | | |
* | | | Move pf_get_bits/size() to u_format auxiliary module.Michal Krol2009-12-031-1/+1
| | | |
* | | | Move pf_get_block() to u_format auxiliary module.Michal Krol2009-12-033-4/+5
| | | |
* | | | Move pf_is_depth_and_stencil() to u_format auxiliary module.Michal Krol2009-12-033-6/+8
| | | |
* | | | Move pf_is_depth_stencil() to u_format auxiliary module.Michal Krol2009-12-032-2/+3
| | | |
* | | | Move pf_is_compressed() to u_format auxiliary module.Michal Krol2009-12-031-1/+2
|/ / /
* | | mesa: Update vertex texture code after gallium changes.Michal Krol2009-12-013-0/+21
| | |
* | | st: Update for renamed sampler/texture state setters.Michal Krol2009-12-011-2/+2
| | |
* | | st/mesa: handle front/back-face +1/-1 vs. 1/0 conversionBrian Paul2009-11-301-0/+29
| |/ |/| | | | | Fixes progs/glsl/twoside.c demo.
* | Merge branch 'width0'Roland Scheidegger2009-11-278-50/+58
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/drivers/r300/r300_texture.c src/gallium/state_trackers/xorg/xorg_exa.c src/mesa/state_tracker/st_cb_texture.c
| * | gallium: fix more statetrackers/drivers for not using texture ↵Roland Scheidegger2009-11-261-1/+1
| | | | | | | | | | | | width/height/depth arrays
| * | gallium: don't use arrays for texture width,height,depthKeith Whitwell2009-11-198-49/+57
| | |
* | | Merge commit 'origin/st-shader-varients'Roland Scheidegger2009-11-2614-651/+327
|\ \ \ | |_|/ |/| | | | | | | | | | | Conflicts: src/mesa/state_tracker/st_atom_shader.c src/mesa/state_tracker/st_program.c
| * | mesa/st: refactor vertex and fragment shader translationKeith Whitwell2009-11-1512-469/+276
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Translate vertex shaders independently of fragment shaders. Previously tried to make fragment shader semantic indexes always start at zero and exclude holes. This was unnecessary but meant that vertex shader translation had to be adjusted to take this into account. Now use a fixed scheme for labelling special FS input semantics (color, etc), and another fixed scheme for the generics. With this, vertex shaders can be translated independently of the bound fragment shader, assuming mesa has done its own job and ensured that the vertex shader provides at least the inputs the fragment shader is looking for. The state-tracker didn't attempt to do anything about this previously, so it shouldn't be needed now.
| * | mesa/st: emit tgsi vertex shader directly for drawpixelsKeith Whitwell2009-11-151-77/+47
| | | | | | | | | | | | | | | | | | | | | One of several cases where we build mesa shaders and then translate them to tgsi. Many of those cases it's because we're combining two mesa programs and there are helpers for that, but in this case at least can go straight to tgsi.
| * | mesa/st: don't calculate unused output_flags data eitherKeith Whitwell2009-11-153-24/+4
| | |
| * | mesa/st: don't calculate unused input_flags dataKeith Whitwell2009-11-153-16/+2
| | |
| * | mesa/st: don't calculate unused vs input semantic tagsKeith Whitwell2009-11-151-69/+2
| | |
* | | st/mesa: replace st_flush() with pipe->flush()Brian Paul2009-11-191-1/+1
| | | | | | | | | | | | | | | We only need to flush the gallium driver in this case. Fixes a recursive state validation bug.
* | | st/mesa: get rid of compressed_num_bytes() codeBrian Paul2009-11-191-36/+4
| | |
* | | st/mesa: remove is_compressed_mesa_format()Brian Paul2009-11-191-21/+2
| | |
* | | st/mesa: remove pointless assertionBrian Paul2009-11-191-2/+0
| | |
* | | Merge branch 'outputswritten64'Ian Romanick2009-11-172-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a GLbitfield64 type and several macros to operate on 64-bit fields. The OutputsWritten field of gl_program is changed to use that type. This results in a fair amount of fallout in drivers that use programs. No changes are strictly necessary at this point as all bits used are below the 32-bit boundary. Fairly soon several bits will be added for clip distances written by a vertex shader. This will cause several bits used for varyings to be pushed above the 32-bit boundary. This will affect any drivers that support GLSL. At this point, only the i965 driver has been modified to support this eventuality. I did this as a "squash" merge. There were several places through the outputswritten64 branch where things were broken. I foresee this causing difficulties later for bisecting. The history is still available in the branch. Conflicts: src/mesa/drivers/dri/i965/brw_wm.h
* | | mesa: fix assorted compiler warningsBrian Paul2009-11-173-7/+7
| |/ |/|
* | st/mesa: comments for st_draw.cBrian Paul2009-11-151-4/+14
|/
* mesa: Export S3_s3tc as well.José Fonseca2009-11-061-0/+1
| | | | Used in Quake3.
* mesa: Translate MAP_UNSYNCHRONIZED_BIT.José Fonseca2009-11-061-0/+3
|
* Merge branch 'mesa_7_6_branch'Brian Paul2009-11-032-12/+22
|\
| * st/mesa: clip pixels in draw_stencil_pixels to avoid crashMarek Olšák2009-11-031-5/+15
| | | | | | | | Signed-off-by: Brian Paul <[email protected]>
| * st/mesa: don't use util_blit_pixels_writemask() for depth or depth/stencilBrian Paul2009-11-031-0/+2
| | | | | | | | | | | | | | | | util_blit_pixels_writemask() only works for color formats at this time. Also, it might never work for depth/stencil surfaces since we can't get handle stencil values in a fragment shader. Fixes glCopyTexSubImage(GL_DEPTH_COMPONENT).