Tag 'snb-magic' created by Ian Romanick <ian.d.roman...@intel.com> at 2010-11-08 22:24 +0000
SNB support is much better now than in Mesa 7.9 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iEYEABECAAYFAkzYeL0ACgkQX1gOwKyEAw9TvgCfRo5c8OPGOvVlb0nrO5lWLsdb qcsAnjttwwXHUUiwX0bbw1bQetNFu7+q =Haol -----END PGP SIGNATURE----- Changes since 7.9-branchpoint: Adam Jackson (1): i965: Update renderer strings for sandybridge Alex Deucher (7): r600c: fix mipmap stride on evergreen r600c: add reloc for CB_COLOR0_ATTRIB r600c: pull over 6xx/7xx vertex fixes for evergreen r600c: fix segfault in evergreen stencil code r100: revalidate after radeon_update_renderbuffers r600c: add missing radeon_prepare_render() call on evergreen r600c: properly align mipmaps to group size Andre Maasikas (3): r600c: fix buffer height setting in dri2 case r600g: break alu clause earlier r600g: fix evergreen interpolation setup Andrew Randrianasulu (2): dri/nv04: Don't expose ARB_texture_env_combine/dot3. dri/nv04: Enable eng3dm for A8/L8 textures. Bas Nieuwenhuizen (3): r600g: set ENABLE_KILL in the shader state in the new design r600g: set ENABLE_KILL on evergreen too r600g: use dirty list to track dirty blocks Ben Skeggs (2): nv50: DST nv50: DPH Benjamin Franzke (2): st/egl image: multiply drm buf-stride with blocksize r600g: implement texture_get_handle (needed for eglExportDRMImageMESA) Brian Paul (206): glx: add const qualifiers to __indirect_glMultiDrawArraysEXT() glsl2: fix signed/unsigned comparison warning llvmpipe: cast to silence warning llvmpipe: s/boolean/unsigned/ in bitfield to silence warning nv50: use unsigned int for bitfields to silence warnings tgsi: fix incorrect usage_mask for shadow tex instructions gallivm: expand AoS sampling to cover all filtering modes gallivm: fix incorrect vector shuffle datatype gallivm: move i32_vec_type inside the #ifdef mesa: include mfeatures.h in formats.c gallivm: fix wrong return value in bitwise functions tgsi/sse: fix aos_to_soa() loop to handle num_inputs==0 gallivm: added missing case for PIPE_TEXTURE_RECT gallium: better docs for pipe_rasterizer_state::sprite_coord_enable gallium: rework handling of sprite_coord_enable state gallium/docs: added new pipeline.txt diagram mesa: don't call valid_texture_object() in non-debug builds glsl2: silence compiler warnings in printf() calls docs: remove old broken link docs: mark as obsolete, remove dead links llvmpipe: fix query bug when no there's no scene gallivm: remove debug code llvmpipe: maintain fragment shader state for draw module llvmpipe: indentation fix llvmpipe: reformatting, remove trailing whitespace, etc llvmpipe: clean-up, comments in setup_point_coefficient() llvmpipe: rename sprite field, add sprite_coord_origin llvmpipe: implement sprite coord origin modes draw: fix test for using the wide-point stage llvmpipe: check bitshift against PIPE_MAX_SHADER_OUTPUTS draw: check bitshift against PIPE_MAX_SHADER_OUTPUS Merge branch 'sprite-coord' draw: new draw_fs.[ch] files glsl2: fix typo in error msg gallivm: fix lp_build_sample_compare() softpipe: add missing calls to set draw vertex samplers/views mesa: don't advertise bogus GL_ARB_shading_language_120 extension configs: remove egl-swrast target from linux-dri config llvmpipe: fix sprite texcoord setup for non-projective texturing mesa: fix assertions to handle srgb formats st/mesa: add missing MESA_FORMAT_S8 case in st_mesa_format_to_pipe_format() st/mesa: use the wrapped renderbuffer in CopyPixels() llvmpipe: make min/max lod and lod bias dynamic state llvmpipe: make texture border_color dynamic state softpipe: fix repeat() function for NPOT textures gallivm: fix repeat() function for NPOT textures swrast: update comments for REMAINDER() macro softpipe: rename sp_state_fs.c -> sp_state_shader.c softpipe: make shader-related functions static softpipe: make blend/stencil/depth functions static softpipe: make sampler state functions static softpipe: make vertex state functions static softpipe: make rasterizer state functions static softpipe: make stream out state functions static softpipe: make clip state functions static softpipe: minor asst. clean-ups softpipe: allocate tile data on demand llvmpipe: fix swizzling of texture border color softpipe: fix swizzling of texture border color draw: pass sampler state down to llvm jit state gallivm: check for level=0 case in lp_build_minify() gallivm: added some comments draw: check for null sampler pointers swrast: fix choose_depth_texture_level() to respect mipmap filtering state st/mesa: replace assertion w/ conditional in framebuffer invalidation glsl2: fix signed/unsigned comparison warning st/xlib: add some comments ir_to_mesa: assorted clean-ups, const qualifiers, new comments mesa: remove assertion w/ undeclared variable texelBytes gallivm: remove newlines draw/llvmpipe: replace DRAW_MAX_TEXTURE_LEVELS with PIPE_MAX_TEXTURE_LEVELS mesa: reformatting, comments, code movement x11: fix breakage from gl_config::visualType removal gallivm: work-around trilinear mipmap filtering regression with LLVM 2.8 mesa: remove post-convolution width/height vars gallivm: add compile-time option to emit inst addrs and/or line numbers llvmpipe: code to dump bytecode to file (disabled) gallivm: added lp_build_print_vec4() gallivm: added lp_build_load_volatile() glsl: add ir_unop_round_even case to silence unhandled enum warning st/mesa: fix regressions in glDrawPixels(GL_STENCIL_INDEX) st/mesa: reformatting in st_cb_drawpixels.c st/mesa: use GLuint to avoid problem w/ uint not defined on mingw32 st/mesa: update function name, comments gallivm: use util_snprintf() llvmpipe: remove lp_setup_coef*.c files from Makefile mesa: fix mesa version string construction gallivm: fix incorrect type for zero vector in emit_kilp() llvmpipe/draw: always enable LLVMAddInstructionCombiningPass() draw: use float version of LLVM Mul/Add instructions draw: fix typo in comment mesa: add GL_RG case to _mesa_source_buffer_exists() mesa: add missing cases for packing red/green images st/mesa: added cases for GL_COMPRESSED_RED/RG in st_choose_format() docs: update texture red/green support in GL3.txt docs: add GL_ARB_texture_rg to release notes mesa: driver hook for primitive restart mesa: set/get primitive restart state mesa: API spec for primitive restart mesa: regenerated files with primitive restart mesa: plug in primitive restart function vbo: support for primitive restart gallium: new CAP, state for primitive restart st/mesa: support for primitive restart draw: implement primitive splitting for primitive restart softpipe: enable primitive restart llvmpipe: enable primitive restart docs: added GL_NV_primitive_restart extension Merge branch 'primitive-restart-cleanup' winsys/xlib: formatting fixes winsys/xlib: use Bool type for shm field winsys/xlib: fix up allocation/dealloction of XImage winsys/xlib: rename xm->xlib galahad: silence warnings mesa: move declaration before code docs: updated GL3 status for primitive restart mesa: 80-column wrapping mesa: simplify fbo format checking code mesa: split up the image.c file mesa: add pixel packing for unscaled integer types mesa: _mesa_ClearColorIuiEXT() and _mesa_ClearColorIiEXT() mesa: _mesa_is_format_integer() function mesa: minor reformatting, clean-ups mesa: added _mesa_is_fragment_shader_active() helper mesa: new glDrawPixels error check for integer formats softpipe: added some texture sample debug code (disabled) mesa: added new gl_extensions::EXT_gpu_shader4 field mesa: added new gl_framebuffer::_IntegerColor field mesa: added glGet query for GL_RGBA_INTEGER_MODE_EXT mesa: compute _IntegerColor field in _mesa_test_framebuffer_completeness() mesa: added cases for GL_EXT_texture_integer formats mesa: added cases for GL_EXT_texture_integer st/mesa: add format selection for signed/unsigned integer formats mesa: simplify target_can_be_compressed() function glapi: GL_EXT_texture_integer API glapi: include/build EXT_texture_integer.xml mesa: regenerated API files for GL_EXT_texture_integer mesa: plug in GL_EXT_texture_integer functions mesa: display list support for GL_EXT_texture_integer st/mesa: be smarter choosing texture format for glDrawPixels() softpipe: remove >32bpp color restriction mesa: silence enum comparison warning mesa: fix uninitialized var warning xlib: silence unused var warning util: use pointer_to_func() to silence warning rtasm: use pointer_to_func() to silence warning translate: use function typedefs, casts to silence warnings translate: remove unused prototypes mesa: additional glReadPixels error checks for GL_EXT_texture_integer mesa: additional switch cases for GL_EXT_texture_integer mesa: additional teximage error checks for GL_EXT_texture_integer mesa: do integer FB / shader validation check in _mesa_valid_to_render() mesa: call _mesa_valid_to_render() in glDrawPixels, glCopyPixels, glBitmap mesa: remove the unused _mesa_is_fragment_shader_active() function mesa: fix bug in _mesa_is_format_integer() mesa: rename function to _mesa_is_format_integer_color() mesa: remove 'normalized' parameter from _mesa_VertexAttribIPointer() vbo: re-indent file glapi: xml spec file for GL_EXT_gpu_shader4 glapi: include EXT_gpu_shader4.xml glapi: regenerated API files mesa: plug in stubs for glBindFragDataLocation(), glGetFragDataLocation() mesa: add glGetUniformuiv(), plug in uint glUniform funcs mesa: plug in more GL_EXT_gpu_shader4 functions mesa: add new GLvertexformat entries for integer-valued attributes mesa: implement integer-valued vertex attribute functions mesa: add gl_client_array::Integer field and related vertex array state code mesa: consolidate glVertex/Color/etcPointer() code mesa: state/queries for GL_MIN/MAX_PROGRAM_TEXEL_OFFSET_EXT mesa: glArrayElement support for integer-valued arrays mesa: clean-up array element code mesa: add extension table entry for GL_EXT_gpu_shader4 mesa: remove obsolete comment mesa: fix incorrect type in _mesa_texstore_rgba_int16() mesa: fix integer cases in _mesa_is_legal_format_and_type() mesa: add const qualifier to _mesa_is_legal_format_and_type() mesa: additional integer formats in _mesa_bytes_per_pixel() mesa: pixel transfer ops do not apply to integer-valued textures mesa: remove dead code osmesa: fix renderbuffer memleak in OSMesaMakeCurrent() mesa: use GLubyte for edge flag arrays mesa: move the gl_config struct declaration dri/util: add a bunch of comments mesa: remove always-false conditional in check_compatible() mesa: fix aux/accum comment and error message mixups llvmpipe: assign context's frag shader pointer before using it llvmpipe: add a cast mesa: silence new warnings in texobj.c egl/gdi: fix typo: xsurf->gsurf mesa: code to unpack RGBA as uints gallivm: implement scatter stores into temp register file gallivm: add some LLVM var labels gallivm: added debug code to dump temp registers gallivm: add pixel offsets in scatter stores gallivm: added lp_elem_type() gallivm: implement execution mask for scatter stores tgsi: remove unused function llvmpipe: added some debug assertions, but disabled gallivm: alloca() was called too often for temporary arrays gallivm: add const qualifiers, fix comment string softpipe: disable vertex texturing with draw/llvm mesa: consolidate pixel packing/unpacking code mesa: rename vars in pixel pack/unpack code mesa: implement uint texstore code mesa: remove stray GL_FLOAT case in _mesa_is_legal_format_and_type() mesa: make fixed-pt and byte-valued arrays a runtime feature Brian Rogers (1): mesa: Add missing else in do_row_3D Chad Versace (19): intel_extensions: Add ability to set GLSL version via environment glsl: Add glsl_type::uvecN_type for N=2,3 glsl: Add lexer rules for uint and uvecN (N=2..4) glsl: Changes in generated file glsl_lexer.cpp glsl: Add lexer rules for << and >> in GLSL 1.30 glsl: Change generated file glsl_lexer.cpp glsl: Implement ast-to-hir for binary shifts in GLSL 1.30 glsl: Implement constant expr evaluation for bitwise-not glsl: Implement constant expr evaluation for bit-shift ops glsl: Implement constant expr evaluation for bitwise logic ops glsl: Fix ir validation for bit logic ops glsl: Define shift_result_type() in ast_to_hir.cpp glsl: Implement ast-to-hir for bit-shift-assignment glsl: Define bit_logic_result_type() in ast_to_hir.cpp glsl: Implement ast-to-hir for bit-logic ops glsl: Fix lexer rule for ^= glsl: Commit generated file glsl_lexer.cpp glsl: Fix ast-to-hir for ARB_fragment_coord_conventions mesa: Fix C++ includes in sampler.cpp Chia-I Wu (65): glapi: Fix build errors for ES. glapi: Fix ES build errors again. mesa: Update ES APIspec.xml. st/xlib: Notify the context when the front/back buffers are swapped. targets/egl: Use C++ compiler to link GL/ES state trackers. libgl-xlib: Remove unused st_api_create_OpenGL. st/egl: Split modeset code support to modeset.c. st/egl: Rename kms backend to drm. st/egl: s/kms/drm/ on the drm backend. egl: Enable drm platform by default. egl: Check extensions. st/egl: Skip single-buffered configs in EGL. mapi: Fix compiler warnings. st/egl: Drop context argument from egl_g3d_get_egl_image. targets/egl: Fix linking with libdrm. st/vega: Fix version check in context creation. egl: Use attribute names as the _EGLConfig member names. egl: Access config attributes directly. st/egl: Access _EGLConfig directly. st/egl: Do not finish a fence that is NULL. mesa: Remove unused vtxfmt_tmp.h. egl_dri2: Drop the use of _egl[SG]etConfigKey. egl_glx: Drop the use of [SG]ET_CONFIG_ATTRIB. egl_glx: Fix borken driver. egl: Move attributes in _EGLImage to _EGLImageAttribs. egl: Parse image attributes with _eglParseImageAttribList. egl: Move fallback routines to eglfallbacks.c. egl: Drop dpy argument from the link functions. egl: Minor changes to the _EGLConfig interface. egl: Minor changes to the _EGLScreen interface. egl: Fix _eglModeLookup. st/egl: Fix native_mode refresh mode. egl: Add reference count for resources. egl: Use reference counting to replace IsLinked or IsBound. egl: Fix a false negative check in _eglCheckMakeCurrent. st/egl: Use resource reference count for egl_g3d_sync. egl_dri2: Fix a typo that make glFlush be called at wrong time. glapi: Do not use glapidispatch.h. glapi: Move glapidispatch.h to core mesa. glapi: Do not use glapioffsets.h. glapi: Merge glapioffsets.h into glapidispath.h. vbo: Use CALL_* macros. mesa: Remove unnecessary glapitable.h includes. autoconf: Better client API selection. docs: Update egl and openvg docs. autoconf: Update configuration info. Merge branch 'glapi-reorg' targets: Add missing quotes to Makefile.xorg. autoconf: st/vega requires --enable-openvg. st/mesa: Unreference the sampler view in st_bind_surface. autoconf: Tidy configure output for EGL. targets/egl: Fix a warning with --disable-opengl build. egl: Rework _eglGetSearchPath. mesa: Select FEATURE_remap_table when multiple APIs are enabled. mesa: Allow contexts of different APIs to coexist. egl: Set up the pthread key even TLS is used. st/egl: Add native_surface::present callback. st/egl: Use native_surface::present callback. d3d1x: Use native_surface::present. st/egl: Remove flush_frontbuffer and swap_buffers. st/egl: Add support for swap interval and swap behavior. st/egl: Add support for EGL_MATCH_NATIVE_PIXMAP. st/egl: Add extern "C" wrapper to native.h. st/egl: Add native_display_buffer interface. st/egl: Use native_display_buffer for EGL_MESA_drm_image. Christoph Bumiller (80): nv50: import new compiler nouveau: update nouveau_class.h nv50: introduce the big formats table nv50: don't produce MOV immediate to output reg in store opt nv50: change back accidentally swapped UNORM,SNORM vertex type nv50: add/fix some license headers nv50: simple reload elimination and local CSE nv50: fix constant_operand opt mul by 2 case nv50: permit usage of undefined TGSI TEMPs nv50: add missing 2nd source for POW multiplication nv50: add signed RGTC1 to format table, allow 2_10_10_10 for vbufs nv50: fix for empty BBs nv50: insert MOVs also for PHI sources from dominating block nv50: explicitly set src type for SET ops nv50: fixes for nested IFs nv50: don't eliminate loads to dedicated values nv50: fix constbuf validation nv50: build proper phi functions in the first place nv50: fix reg count nv50: begin implementing loops nv50: more constant folding nv50: loops part 2 nv50: flatten simple IF/ELSE/ENDIF constructs nv50: fix thinko in store to output reg possible check nv50: generate JOINs for outermost IF clauses nv50: more TGSI opcodes (SIN, SCS, ARL, RET, KILP) nv50: fix PSIZ and PRIMID mapping nv50: check dst compatibility in CSE nv50: initialize edgeflag input index nv50: emit predicate for interp Merge remote branch 'origin/master' into nv50-compiler nv50: DP2, fix ARL nv50: yet another case we need a nop.exit nv50: fix check for sprite/point coord enable nv50: handle TEXTURE_SWIZZLE and GEOMETRY_SHADER4 caps nv50: set the FragDepth output index nv50: turn off verbose debug output by default nv50: attempt at making more complicated loops work nv50: SSG nv50: make FrontFacing -1 or +1 nv50: re-add proper TEXBIAS sequence nv50: make use of TGSI immediate type nv50: must join SELECT inputs before MOV inputs nv50: fix XPD, was negated nv50: fix find_dom_frontier nv50: fix build-predicate function Merge remote branch 'origin/master' into nv50-compiler nv50: load address register before using it, not after nv50: save tgsi instructions nv50: prepare for having multiple functions nv50: don't parse again in tgsi_2_nc nv50: use actual loads/stores if TEMPs are accessed indirectly nv50: create value references with the right type nv50: duplicate interps in load_proj_tex_coords nv50: address regs are 16 bit nv50: fix can_load check for 3rd source nv50: reduce bb_reachable_by runtime from pot to linear nv50: minor compiler fixes and cleanups nv50: cannot move from local mem to output reg directly nv50: newlines in shader bincode printing nv50: match TEMP limit with nv50 ir builder nv50: handle TGSI EXP and LOG again nv50: check for immediates when turning MUL ADD into MAD nv50: interp cannot write flags reg nv50: MOV TEMP[0], -CONST[0] must be float32 negation nv50: fix indirect CONST access with large or negative offsets nv50: fix TXP depth comparison value nv50: consider address register in reload elimination nv50: improve and fix modifier folding optimization nv50: put low limit on REG_ALLOC_TEMP and FP_RESULT_COUNT Merge remote branch 'origin/nv50-compiler' nv50: don't segfault on shaders with 0 instructions nv50: get shader fixups/relocations into working state nv50: add relocs for stack and local mem buffers nv50: emit constbuf relocs before uploading constants nv50: fix typo in fifo packet length limit nv50: use formats table in nv50_surface.c nv50: use CLEAR_BUFFERS for surface fills nv50: fix/handle a few more PIPE_CAPs nv50: fix GP state bind and validate Corbin Simpson (8): r600g: Use align() instead of handrolled code. r600g: Trivially deobfuscate r600_hw_states. r600g: Deobfuscate and comment a few more functions in r600_hw_states. r600g: Clean up some indentation and |= vs. | usage. r600g: Fix false and true. r600g: "tmp" is such a bad name for a texture. r600g: Clean up PS setup. r600g: Cleanup viewport floats. Daniel Vetter (1): r200: revalidate after radeon_update_renderbuffers Dave Airlie (174): r300g: fix buffer reuse issue caused by previous commit r600g: pull r600_draw struct out into header r600g: use index min/max + index buffer offset. r600g: add vgt dma src defines r600g: fixup texture state on evergreen. r600g: fix texture bos and avoid doing depth blit on evergreen r600g: hide radeon_ctx inside winsys. r600g: attempt to abstract kernel bos from pipe driver. r600g: move constant buffer creation behind winsys abstraction. r600g: use malloc bufmgr for constant buffers r600g: add support for kernel bo r600g: add winsys bo caching. r600g: add upload manager support. r600g: fixup map flushing. r600g: use calloc for ctx bo allocations r600g: oops got the use_mem_constant the wrong way around. r600g; add uses waterfall to asm cf for r6xx. r600g: only emit uses waterfall on r6xx hw. util/r300g: split the r300 index buffer modifier functions out to util r600g: modify index buffers for sizes the hw can't deal with. r600g: send correct surface base update for multi-cbufs r600g: fix fbo-drawbuffers-maxtargets r600g: clean up valgrind issues on maxtargets test. r600g: drop debugging that snuck in r600g: fix tiling support for ddx supplied buffers r600g: add z16 to color setup r600g: add color/texture support for more depth formats. r600g: fix r700 cube map sizing. r600g: fixup r700 CB_SHADER_CONTROL register. r600g: add missing BC_INST wrapper for evergreen r600g: only flush for the correct colorbuffer, not all of them. r600g: deal with overflow of VTX/TEX CF clauses. r600g: set back to correct codepaths. r600g: fixup evergreen miptree setup. r600g: fix eg texture borders. r600g: fix typo in struct member name r600g: cleanup some of the DB blit code r600g: make stencil readback work r600g: disable dirty handling on texture from depth code. r600g: use floats instead of hex for blit vbo r600g: fix depth readback on rv610 and other quirky variants. r600g: fix typo in evergreen register list u_blitter: add a custom blitter call passing a dsa cso r600g: use blitter to do db->cb flushing. r600g: fix warnings since last commit. egl: fix build since 17eace581d25a626a7d75d9d1205d012cbb14a6e r300g: fix point sprite coord. r600g: add vert support for 16/16 and 16/16/16 floats. r600g: add some more vertex format support. r600g: some more vertex formats r600g: fix draw-elements and draw-elements-base-vertex r600g: drop index_offset parameter to index buffer translate. r600g: fixup tex wrapping. r600g: fixup VP->FP output->input routing. r600g: fix typo in r700 alu emit r600g: fixup sprite coord enable. r600g: fix polygon mode mesa/mipmap: fix warning since 1acadebd6270d3604b026842b8a21360968618a0 r600g: add eg poly mode code. r600g: make index bias fix for evergreen r600g: add eg db count control register. r300g: fix glsl-fs-pointcoord r600g: add evergreen texture resource properly. r600g: fix db flush breaking config state r600g: on evergreen the centroid isn't set in this register. r600g: add back evergreen name. r600g: add evergreen texture border support to new path r600g: move radeon.h members around to add back map flushing. r600g: add initial vertex translate support. r600g: remove old assert from new codepath Revert "r600g: add initial vertex translate support." r600g: port r300g fix for X* formats in texformat code r600g: add L8A8 unorm. r600g: clean up some code from move to new paths. r600g: return string for chip family r600g: use Elements macro instead of manual sizeofs r600g: fix evergreen depth flushing. r600g: add winsys support for CTL constants. r600g: drop depth quirk on evergreen r600g: add reloc for evergreen color attrib r600g: realign evergreen code with r600 code. r600g: add assembler support for other vtx fetch fields. r600g: fixup vertex format picking. r600g: sync vertex/texture cache on resources on evergreen r600g: add cb flushing for extra buffers + depth buffer on r600/evergreen r600g: fix evergreen draw-buffers r600g: flush SH cache on constant change on evergreen r600g: only set the Z export if shader exports it. r600g: setup basic loop consts on r600 + evergreen. mesa/st: initial attempt at RG support for gallium drivers r600g: break out of search for reloc bo after finding it. r600g: the code to check whether a new vertex shader is needed was wrong r600g: fix wwarning in bo_map function r600g: TODO domain management r600g: add bo fenced list. pb: don't keep checking buffers after first busy r600g: add bo busy backoff. r600g: drop mman allocator r600g: drop use_mem_constant. r600g: avoid unneeded bo wait pb: fix numDelayed accounting r600g: add evergreen stencil support. r600g: use format from the sampler view not from the texture. r600g: fix Z export enable bits. r600g: add some RG texture format support. r600g: drop width/height per level storage. r600g: fix input/output Z export mixup for evergreen. r600g: evergreen has no request size bit in texture word4 r600g: enable vertex samplers. r600g: add TXL opcode support. r600g: don't run with scissors. r600g: fix typo in vertex sampling on r600 gallium/tgsi: add support for stencil writes. gallium/format: add support for X24S8 and S8X24 formats. gallium/format: add X32_S8X24_USCALED format. gallium/util: add S8 tile sampling support. mesa: add support for FRAG_RESULT_STENCIL. mesa: improve texstore for 8/24 formats and add texstore for S8. softpipe: add support for shader stencil export capability st/mesa: add option to choose a texture format that we won't render to. st/mesa: use shader stencil export to accelerate shader drawpixels. r600g: add support for S8, X24S8 and S8X24 sampler formats. r600g: add shader stencil export support. glsl: add support for shader stencil export st/mesa: enable stencil shader export extension if supported r600g: fix depth0 setting r600g: fix scissor/cliprect confusion r600g: store samplers/views across blit when we need to modify them r600g: reduce size of context structure. r600g: the vs/ps const arrays weren't actually being used. r600g: add copy into tiled texture r600g: split out miptree setup like r300g r600g: use common texture object create function r600g: rename pitch in texture to pitch_in_bytes r600g: remove bpt and start using pitch_in_bytes/pixels. r600g: fix transfer stride. r600g: drop all use of unsigned long r600g: use blitter for hw copy region r600g: evergreen add stencil export bit r600g: add missing eg reg definition r600g: fix stencil export for evergreen harder r600g: drop unused context members r600g: only pick centroid coordinate when asked. r600g: fixup pos/face ena/address properly r600g: fixup typo in macro name r600g: select linear interpolate if tgsi input requests it r300g: clean up warning due to unknown cap. tgsi: add scanner support for centroid inputs r600g: evergreen interpolation support. r600g: add evergreen ARL support. r600g: switch to a common formats.h file since they are in different regs r600g: add defines for tiling r600g: get tiling info from kernel r600g: set tiling bits in hw state r600g: do proper tracking of views/samplers. r600g: fix typo in tiling setup cb code. r600g: depth needs to bound to ds r600g: attempt to cleanup depth blit r600g: fix transfer function for tiling. r600g: retrieve tiling info from kernel for shared buffers. r600g: all non-0 mipmap levels need to be w/h aligned to POT. r600g: move to per-miplevel array mode. r600g: start adding hooks for aligning width/height for tiles. r600g: add r600 surface to store the aligned height. r600g: introduce a per-driver resource flag for transfers. r600g: add texture tiling alignment support. r600g: add texture tiling enable under a debug option. r600g: initial translate state support r600g: start splitting out common code from eg/r600. r600g: not fatal if we can't get tiling info from kernel r600g: merge more of the common r600/evergreen state handling r600g: drop more common state handling code r600g: fix magic 0x1 ->flat shade ena r600g: add assembler support for all the kcache fields. Eric Anholt (194): glsl: Add definition of gl_TextureMatrix inverse/transpose builtins. i965: Share the KIL_NV implementation between glsl and non-glsl. i965: Also enable CC statistics when doing OQs. i965: Track the windowizer's dispatch for kill pixel, promoted, and OQ glsl: Rework assignments with write_masks to have LHS chan count match RHS. glsl: Fix copy'n'wasted ir_noop_swizzle conditions. ir_to_mesa: Only compare vector_elements present for any_nequal/all_equal i965: Fix the vector/expression splitting for the write_mask change. i965: When splitting vector variable assignment, ignore unset channels. i965: Update expression splitting for the vector-result change to compares. i965: Warning fix for vector result any_nequal/all_equal change. mesa: Remove the non-required ARB_imaging extension. mesa: Remove EXT_histogram. mesa: Remove SGI_color_table. mesa: Remove SGI_color_matrix. mesa: Remove EXT_convolution. intel: Remove disabled stencil drawpixels acceleration. intel: Remove unnecessary minimum pitch alignment to 32 bytes. intel: Replace my intel_texture_bitmap code with _mesa_meta_Bitmap. radeon: Remove copied minimum pitch alignment code. unichrome: Mostly revert my convolution removal changes. intel: Remove dead intelIsTextureResident(). i915: Remove a dead if (0) block. intel: Dead comment removal. intel: Corresponding FinishRenderTexture debug to BeginRenderTexture. i965: Add support for rendering to SARGB8 FBOs. intel: Fix segfault on INTEL_DEBUG=fbo with unsupported framebuffers. intel: Add fallback debug to glGenerateMipmap. intel: More reverting of the sw fallback for depth texture border color. intel: Improve some of the miptree debugging. mesa: Fix type typo in glGenerateMipmap handling of GL_UNSIGNED_INT data. glsl: Fix broadcast_index of lower_variable_index_to_cond_assign. glsl: Add validation that a swizzle only references valid channels. i965: Fix up writemasked assignments in the new FS. i965: Remove swizzling of assignment to vector-splitting single-channel LHS. i965: Handle all_equal/any_nequal in the new FS. i965: Fix vector splitting RHS channel selection with sparse writemasks. i965: Add support for dFdx()/dFdy() to the FS backend. i965: Add support for attribute interpolation on Sandybridge. i965: Set up inputs to the fragment shader according to FP InputsRead. i965: Add support for POW in gen6 FS. i965: Fix negation in the new FS backend. i965: Actually track the "if" depth in loop in the new FS backend. i965: Apply the same set of lowering passes to new FS as to Mesa IR. i965: Fix valgrind complaint about base_ir for new FS debugging. i965: Fix up the FS backend for the variable array indexing pass. i965: Set the variable type when dereferencing an array. i965: Add support for dereferencing structs to the new FS backend. i965: Add support for struct, array, and matrix uniforms to FS backend. i965: Fix all non-snb regression in the snb attribute interpolation commit. i965: Fix up part of my Sandybridge attributes support patch. i965: Add support for gl_FrontFacing to the new FS backend. i965: Subtract instead of adding when computing y delta in new FS backend. mesa: Pull ir_to_mesa's sampler number fetcher out to shared code. i965: Set up sampler numbers in the FS backend. i965: Add support for non-color render target write data to new FS backend. i965: Add support for MRT to the new FS backend. i965: Add support for ir_loop counters to the new FS backend. i965: Add support for ARB_fragment_coord_conventions to the new FS backend. glsl: Also update implicit sizes of varyings at link time. i965: Do interpolation for varying matrices and arrays in the FS backend. i965: Don't try to emit interpolation for unused varying slots. i965: Fix array indexing of arrays of matrices. i965: Clean up obsolete FINISHME comment. mesa: Move the list of builtin uniform info from ir_to_mesa to shared code. i965: Add support for builtin uniforms to the new FS backend. i965: Fix use of undefined mem_ctx in vector splitting. i956: Make new FS discard do its work in a temp, not the null reg! i965: Clean up the virtual GRF handling. ra: First cut at a graph-coloring register allocator for mesa. i965: First cut at register allocation using graph coloring. i965: Add live interval analysis and hook it up to the register allocator. i965: Remove my "safety counter" code from loops. i965: Fix whole-structure/array assignment in new FS. mesa: Don't reference a W component in setting up a vec3 uniform component. i965: Fix new FS handling of builtin uniforms with packed scalars in structs. glsl: Add a lowering pass for texture projection. i965: Use the lowering pass for texture projection. i965: Split the gen4 and gen5 sampler handling apart. i965: Add gen6 attribute interpolation to new FS backend. i965: Fix the gen6 jump size for BREAK/CONT in new FS. i965: Also increment attribute location when skipping unused slots. i965: Pre-gen6, map VS outputs (not FS inputs) to URB setup in the new FS. i965: Add real support for pre-gen5 texture sampling to the new FS. i965: Fix up copy'n'pasteo from moving coordinate setup around for gen4. i965: Restore the forcing of aligned pairs for delta_xy on chips with PLN. i965: When producing a single channel swizzle, don't make a temporary. i965: Add a sanity check for register allocation sizes. i965: Fix off-by-ones in handling the last members of register classes. i965: Don't try to emit code if we failed register allocation. i965: Add support for EXT_texture_swizzle to the new FS backend. i965: Set up swizzling of shadow compare results for GL_DEPTH_TEXTURE_MODE. i965: Fix glean/texSwizzle regression in previous commit. i965: Be more conservative on live interval calculation. i965: Add trivial dead code elimination in the new FS backend. i965: Add initial folding of constants into operand immediate slots. i965: In disasm, gen6 fb writes don't put msg reg # in destreg_conditionalmod. i965: Add support for gen6 FB writes to the new FS. i965: Enable the constant propagation code. i965: Also do constant propagation for the second operand of CMP. i965: Add back gen6 headerless FB writes to the new FS backend. i965: Gen6 no longer has the IFF instruction; always use IF. i965: Fix up IF/ELSE/ENDIF for gen6. i965: Fix botch in the header_present case in the new FS. i965: Add some clarification of the WECtrl field. i965: Don't do 1/w multiplication in new FS for gen6 i965: Gen6's sampler messages are the same as Ironlake. i965: Refactor gl_FrontFacing setup out of general variable setup. i965: Add support for gl_FrontFacing on gen6. i965: Don't assume that WPOS is always provided on gen6 in the new FS. i965: Fix gen6 pointsize handling to match pre-gen6. i965: Disable emitting if () statements on gen6 until we really fix them. i965: Normalize cubemap coordinates like is done in the Mesa IR path. mesa: Simplify a bit of _mesa_add_state_reference using memcmp. i965: Drop the check for duplicate _mesa_add_state_reference. i965: Drop the check for YUV constants in the param list. i965: Handle swizzles in the addition of YUV texture constants. i965: Fix gen6 WM push constants updates. i965: Fix new FS gen6 interpolation for sparsely-populated arrays. i965: Enable attribute swizzling (repositioning) in the gen6 SF. i965: Add register coalescing to the new FS backend. i965: Split FS_OPCODE_DISCARD into two steps. i965: Reduce register interference checks for changed FS_OPCODE_DISCARD. i965: Move FS backend structures to a header. i965: Give the math opcodes information on base mrf/mrf len. i965: Give the FB write and texture opcodes the info on base MRF, like math. i965: Compute to MRF in the new FS backend. i965: Don't consider gen6 math instructions to write to MRFs. i965: Add a couple of checks for gen6 math instruction limits. i965: Don't compute-to-MRF in gen6 math instructions. i965: Expand uniform args to gen6 math to full registers to get hstride == 1. i965: Don't compute-to-MRF in gen6 VS math. i965: Fix gen6 pixel_[xy] setup to avoid mixing int and float src operands. i965: Always use the new FS backend on gen6. i965: Fix missing "break;" in i2b/f2b, and missing AND of CMP result. intel: Allow CopyTexSubImage to InternalFormat 3/4 textures, like RGB/RGBA. i965: Don't rebase the index buffer to min 0 if any arrays are in VBOs. i965: Add support for rescaling GL_TEXTURE_RECTANGLE coords to new FS. i965: Set class_sizes[] for the aligned reg pair class. i965: Update the live interval when coalescing regs. i965: Add a pass to the FS to split virtual GRFs to float channels. i965: Add a function for handling the move of boolean values to flag regs. i965: Add peepholing of conditional mod generation from expressions. i965: Enable the new FS backend on pre-gen6 as well. i965: Fix texturing on pre-gen5. i965: Set the type of the null register to fix gen6 FS comparisons. i965: Disable the debug printf I added for FS disasm. i965: Fix a weirdness in NOT handling. i965: Fix assertion failure on gen6 BufferSubData to busy BO. i965: Assert out on gen6 VS constant buffer reads that hang the GPU for now. i965: Fix scissor-offscreen on gen6 like we did pre-gen6. i965: Avoid blits in BufferCopySubdata on gen6. i965: Tell the shader compiler when we expect depth writes for gen6. i965: Remove the gen6 emit_mi_flushes I sprinkled around the driver. i965: Disable thread dispatch when the FS doesn't do any work. i965: Add EU emit support for gen6's new IF instruction with comparison. i965: Set the source operand types for gen6 if/else/endif to integer. i965: Use the new style of IF statement with embedded comparison on gen6. i965: Split register allocation out of the ever-growing brw_fs.cpp. i965: Fix gl_FrontFacing emit on pre-gen6. i965: Add support for register spilling. i965: Don't emit register spill offsets directly into g0. i965: Correct scratch space allocation. i965: Be more aggressive in tracking live/dead intervals within loops. i965: Move the FS disasm/annotation printout to codegen time. i965: Add support for pull constants to the new FS backend. i965: Add EU code for dword scattered reads (constant buffer array indexing). i965: Clarify an XXX comment in FB writes with real info. i965: Use SENDC on the first render target write on gen6. i965: Clear some undefined fields of g0 when using them for gen6 FB writes. i965: Add disasm for the flag register. i965: Add support for discard instructions on gen6. i965: Handle new ir_unop_round_even in channel expression splitting. i965: Fix typo in comment about state flags. i965: Set up the constant buffer on gen6 when it's needed. i965: Add support for constant buffer loads on gen6. i965: Drop the eot argument to read messages, which can never be set. i965: Fix VS URB entry sizing. i965: Disable register spilling on gen6 until it's fixed. i965: Make FS uniforms be the actual type of the uniform at upload time. i965: Add user clip planes support to gen6. i965: Update gen6 SF state when point state (sprite or attenuation) changes. i965: Upload required gen6 VS push constants even when using pull constants. i965: Update the gen6 stencil ref state when stencil state changes. mesa: Make metaops use program refcounts instead of names. mesa: Don't compute an unused texture completeness debug string. intel: For batch, use GTT mapping instead of writing to a malloc and copying. intel: Annotate debug printout checks with unlikely(). intel: Remove the magic unaligned memcpy code. i965: Remove dead intel_structs.h file. intel: Avoid taking logbase2 of several things that we max. intel: Remove duplicated teximage miptree to object miptree promotion. intel: Remove leftover dri1 locking fields in the context. mesa: Fix delayed state flagging for EXT_sso-related program changes. Francisco Jerez (47): dri/nv04: Fix PGRAPH_ERRORs when running OA. dri/nv04: Mipmapping fixes. dri/nv04: Align SIFM transfer dimensions. dri/nv04: Fix up color mask. dri/nv04: Fix maximum texture size. dri/nv04: Fix provoking vertex. dri/nouveau: Update nouveau_class.h. dri/nouveau: Add some more extensions. dri/nouveau: Fix glRenderbufferStorage with DEPTH_COMPONENT as internal format. dri/nouveau: Don't request a fake front unnecessarily. dri/nouveau: Don't reemit the BO state in nouveau_state_emit(). dri/nouveau: Cleanup references to the old FBOs on glMakeCurrent(). meta: Don't bind the created texture object in init_temp_texture(). dri/nv10: Fix the CLAMP texture wrap mode. dri/nv04: Use nvgl_wrap_mode(). dri/nouveau: Remove unnecessary assertion. dri/nouveau: Cleanup more references to old FBOs and VBOs. dri/nv10-nv20: Fix texturing in some cases after a base level change. dri/nouveau: Fix software mipmap generation on 1x1 textures. dri/nouveau: Have a smaller amount of larger scratch buffers. dri/nouveau: Remove unnecessary flush. dri/nv10: Use fast Z clears. dri/nouveau: Minor cleanup. dri/nv10: Fake fast Z clears for pre-nv17 cards. dri/nouveau: Initialize tile_flags when allocating a render target. nouveau: Get larger push buffers. dri/nouveau: Force a "slow" Z clear if we're getting a new depth buffer. dri/nv20: Clear with the 3D engine. dri/nouveau: Don't assert(0) on compressed internal formats. dri/nv25: Bind a hierarchical depth buffer. dri/nouveau: Call _mesa_update_state() after framebuffer invalidation. dri/nouveau: Honor the access flags in nouveau_bufferobj_map_range. dri/nouveau: Tell the vbo module we want real hardware BOs. dri/nouveau: Split out the scratch helpers to a separate file. dri/nouveau: Avoid recursion in nouveau_bo_context_reset(). dri/nouveau: Use a macro to iterate over the bound vertex attributes. dri/nouveau: Split out array handling to its own file. dri/nouveau: Optimize VBO binding re-emission. dri/nouveau: Keep small DYNAMIC_DRAW vertex buffers in system ram. dri/nouveau: Pipeline glTexSubImage texture transfers. dri/nouveau: Fix type promotion issue on 32bit platforms. dri/nouveau: Validate the framebuffer state on read buffer changes. dri/nouveau: Re-emit the BO state when coming back from a software fallback. meta: Don't leak alpha function/reference value changes. meta: Fix incorrect rendering of the bitmap alpha component. vbo: Avoid unnecessary copy to/from current in vertex format upgrade. meta: Don't try to disable cube maps if the driver doesn't expose the extension. Fredrik Höglund (1): r600g: Fix texture sampling with swizzled coords Guillermo S. Romero (1): r300g: Do not use buf param before checking for NULL. Henri Verbeet (8): r600g: Flush upload buffers before draws instead of before flushes. r600g: Check for other references before checking for existing mappings in radeon_bo_pb_map_internal(). r600g: Remove a redundant flush in r600_texture_transfer_map(). r600g: Buffer object maps imply a wait. r600g: Respect PB_USAGE_UNSYNCHRONIZED in radeon_bo_pb_map_internal(). Revert "r600g: Flush upload buffers before draws instead of before flushes." r600g: fix exports_ps to export a number not a mask. r600g: Mention AMD in the renderer string. Hui Qi Tay (6): llvmpipe: minor changes in llvm coefficient calcs draw: cliptest and viewport done in a single loop in vertex shader draw: added viewport and cliptest flags draw: sanitize llvm variant key draw: corrections for w coordinate draw: corrections to allow for different cliptest cases Ian Romanick (73): glsl2: Refactor testing for whether a deref is of a matrix or array glsl2: Add flags to enable variable index lowering glsl: Add doxygen comments EGL DRI2: Silence piles of 'unused variable' warnings EGL DRI2: Silence 'missing initializer' warnings egl_glx: Silence piles of 'unused variable' warnings egl: Fix several 'comparison between signed and unsigned integer' warnings dri: Ensure that DRI driver cpp files are in tarballs mesa: Force GL_ARB_copy_buffer to always be enabled mesa: Force GL_SGIS_generate_mipmap to always be enabled Remove GL_MESA_packed_depth_stencil Remove GL_EXT_cull_vertex Regenerate files changed by previous commit Remove unnescessary initializations of UpdateTexturePalette ARB_texture_rg: Add GLX protocol support ARB_texture_rg: Correct some errors in RED / RG internal format handling ARB_texture_rg: Add GL_TEXTURE_{RED,GREEN}_SIZE query support ARB_texture_rg: Add GL_RED as a valid GL_DEPTH_TEXTURE_MODE ARB_texture_rg: Handle RED and RG the same as RGB for tex env ARB_texture_rg: Add R8, R16, RG88, and RG1616 internal formats ARB_texture_rg: Allow RED and RG textures as FBO color buffer attachments mesa: Enable GL_ARB_texture_rg in software paths i965: Enable GL_ARB_texture_rg mesa: Add ARB_texture_compression_rgtc as an alias for EXT_texture_compression_rgtc ARB_texture_rg: Add GL_COMPRESSED_{RED,RG} cases in _mesa_is_color_format mesa: Fix misplaced #endif mesa: Trivial correction to comment rgtc: Detect RGTC formats as color formats and as compressed formats docs: Add list of bugs fixed in 7.9 docs: Import 7.9 release notes from 7.9 branch. docs: Import 7.8.x release notes from 7.8 branch. docs: download.html does not need to be updated for each release docs: Update mailing lines from sf.net to freedesktop.org docs: Import news updates from 7.9 branch docs: added news item for 7.9 release glsl: Fail linking if assign_attribute_locations fails glsl: Refactor 'layout' grammar to match GLSL 1.60 spec grammar glsl: Slight refactor of error / warning checking for ARB_fcc layout glsl: Clear type_qualifier using memset glsl: Wrap ast_type_qualifier contents in a struct in a union glsl: Regenerate files modified by previous commits glcpp: Add the define for ARB_explicit_attrib_location when present glcpp: Regenerate files changes by previous commit glsl: Add parser support for GL_ARB_explicit_attrib_location layouts glsl: Regenerate files changes by previous commit glsl: Track explicit location in AST to IR translation glsl: Add linker support for explicit attribute locations main: Enable GL_ARB_explicit_attrib_location for swrast intel: Enable GL_ARB_explicit_attrib_location glsl: Remove const decoration from inlined function parameters docs: skeleton for 7.10 release notes docs: Update status of GL 3.x related extensions mesa: Validate assembly shaders when GLSL shaders are used glsl: Fix incorrect assertion linker: Reject shaders that have unresolved function calls mesa: Silence unused variable warning mesa: Refactor validation of shader targets mesa: Clean up two 'comparison between signed and unsigned' warnings mesa: Clean up various 'unused parameter' warnings in shaderapi glsl: Slightly change the semantic of _LinkedShaders linker: Trivial indention fix i965: Fix indentation after commit 3322fbaf linker: Improve handling of unread/unwritten shader inputs/outputs glapi: Add GL_EXT_separate_shader_objects glapi: Commit files changed by previous commit mesa: Add infrastructure to track GL_EXT_separate_shader_objects mesa: Skeletal support for GL_EXT_separate_shader_objects mesa: Add display list support for GL_EXT_separate_shader_objects functions mesa: Track an ActiveProgram distinct from CurrentProgram Track separate programs for each stage swrast: Enable GL_EXT_separate_shader_objects in software paths intel: Enable GL_EXT_separate_shader_objects in Intel drivers docs: add GL_EXT_separate_shader_objects to release notes Jakob Bornecrantz (18): rbug: Cast opcode to corrent int size rbug: Add function to get opcode name string scons: Link against talloc in the Gallium DRI drivers i915g: Link with wrapper sw winsys with scons tgsi: Actually care what check_soa_dependencies says tgsi: Fix missing test before check llvmpipe: Move makefile include to before targets wrapper: Fix spelling wrapper: Add a way to dewrap a pipe screen without destroying it egl: Remove unnecessary headers target-helpers: Remove per target software wrapper check graw: Tidy graw xlib scons file a bit scons: Remove old pipebuffer SConscript scons: Detabify scons: Check for pkg-config before trying to use it scons: Check for libdrm_[intel|radeon] as well scons: Move dependancy checks to the main gallium scons file scons: Unify state tracker SConscripts Jerome Glisse (53): r600g: alternative command stream building from context r600g: move chip class to radeon common structure r600g: use pipe context for flushing inside map r600g: add back reference check when mapping buffer r600g: directly allocate bo for user buffer r600g: fix multi buffer rendering r600g: occlusion query for new design r600g: flush color buffer after draw command r600g: disable shader rebuild optimization & account cb flush packet r600g: fix multiple occlusion query on same id r600g: initial evergreen support in new path r600g: fix typo in evergreen define (resource are in [0x30000;0x34000] range) r600g: move use_mem_constants flags for new designs structure alignment r600g: evergreen fix for new design r600g: fix compilation after change to evergreend.h r600g: fixup some evergreen register definitions r600g: fix evergreen new path r600g: fix reg definition r600g: fix evergreen new path