summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* r600g: optimise draw vbo function a bit more.Dave Airlie2011-06-211-43/+9
| | | | | | | | this drop a bunch of unnecessary checks (i.e. should be trapped at gallium level), and also removes the switch statement in favour of some calculated values for the vgt values. Signed-off-by: Dave Airlie <[email protected]>
* r600g: reorder LIT instructions to support src == dstPierre-Eric Pelloux-Prayer2011-06-211-35/+36
| | | | | | | | | | | | the attached patch should be an improvement over Vadim Girlin's patch fixing LIT instruction for r600g (commit 2fe39b46e73aea37152777fe11d489e0b1bc3f92). Instructions used in tgsi_lit have been reordered to always write to a dst channel after the same channel in src has been read (so if src == dst, input values are not overwritten before being used). Signed-off-by: Dave Airlie <[email protected]>
* nvfx: nasty hack to make glFinish() actually finish..Ben Skeggs2011-06-213-2/+22
| | | | Signed-off-by: Ben Skeggs <[email protected]>
* glx: Fix compile.Stéphane Marchesin2011-06-201-1/+1
|
* st/mesa: Remove unneeded texture format terminators.Stéphane Marchesin2011-06-201-2/+2
| | | | Signed-off-by: Brian Paul <[email protected]>
* st/mesa: put const qualifer on format_map tableBrian Paul2011-06-201-1/+1
|
* glx: Bind to our context before __glXSetCurrentContextJeremy Huddleston2011-06-201-9/+16
| | | | | | | We want to bind to our context before calling __glXSetCurrentContext or messing with the gc rect in order to properly handle error conditions. Signed-off-by: Jeremy Huddleston <[email protected]>
* glx: Destroy the old context only after the new one has been boundJeremy Huddleston2011-06-201-7/+7
| | | | | | This fixes a regression introduced by 49d7e48b33264d94e30af6129c281b6acafa9427 Signed-off-by: Jeremy Huddleston <[email protected]>
* glx: Allow a context-specific fallback for glXGetProcAddressJeremy Huddleston2011-06-207-1/+20
| | | | | | | | In applegl, GLX advertises the same extensions provided by OpenGL.framework even if such extensions are not provided by glapi. This allows a client to get access to such API. Signed-off-by: Jeremy Huddleston <[email protected]>
* glapi: Update specs to correctly list FramebufferTextureLayerARB as an alias ↵Jeremy Huddleston2011-06-201-1/+1
| | | | | | | | | | of FramebufferTextureLayerEXT FramebufferTextureLayer is an alias of FramebufferTextureLayerEXT, so FramebufferTextureLayerARB needs to be listed as an alias of FramebufferTextureLayerEXT rather than FramebufferTextureLayer. Signed-off-by: Jeremy Huddleston <[email protected]>
* linker: Reject shaders that use too many varyingsIan Romanick2011-06-201-5/+36
| | | | | | | | | | | | Previously it was up to the driver or later code generator to reject these shaders. It turns out that nobody did this. This will need changes to support geometry shaders. NOTE: This is a candidate for the stable branches. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=37743 Reviewed-by: Kenneth Graunke <[email protected]>
* glw: Mark all extern symbols GLAPI to regain default visibility (#31294)Dan Nicholson2011-06-202-6/+6
| | | | | | | | | | | | | | | | | Since switching to hidden visibility on gcc, GLw apps were failing to link. Use the GLAPI definition to use default visibility where necessary. $ nm lib/libGLw.so | grep DrawingArea 0000000000004020 T GLwCreateMDrawingArea 0000000000003430 T GLwDrawingAreaMakeCurrent 0000000000003410 T GLwDrawingAreaSwapBuffers 0000000000204c60 D glwDrawingAreaClassRec 0000000000204d48 D glwDrawingAreaWidgetClass 00000000002053c0 D glwMDrawingAreaClassRec 00000000002054e0 D glwMDrawingAreaWidgetClass Signed-off-by: Dan Nicholson <[email protected]> Tested-by: justin <[email protected]>
* i965/gen6: Apply documented workaround for nonpipelined state packets.Eric Anholt2011-06-203-1/+45
| | | | | | Fixes a 100% reproducible GPU hang in topogun-1.06-orc-84k.trace. Reviewed-by: Kenneth Graunke <[email protected]>
* i965/gen6: Limit the workaround flush to once per primitive.Eric Anholt2011-06-205-0/+16
| | | | | We're about to call this function in a bunch of state emits, so let's not spam the hardware with flushes too hard.
* i965/gen6: Use an BO instead of writing to address 0 for PIPE_CONTROL W/A.Eric Anholt2011-06-204-3/+23
| | | | | | | | This was spectacularly unsafe. On my system, address 0 happens to be the hardware status page for the render ring, and the first quadword of that happens to contain nothing we ever look at, but I sure didn't look forward to having to debug some day when, for example, the kernel happened to bind the ringbuffer before binding the hwsp.
* i965/gen6: Factor the PIPE_CONTROL workaround to a separate function.Eric Anholt2011-06-201-8/+21
| | | | | We're need this workaorund a lot more than we're currently doing, so let's reuse it.
* i965/gen6: Remove state flagging on BRW_NEW_CURBE_OFFSETS.Eric Anholt2011-06-203-6/+3
| | | | | | | | That flag was leftover from gen4, where brw_curbe.c is choosing ranges of the CURBE space for constants to live in, and the unit state tells where to load them from. That's not the case on gen6 -- we don't set this flag (since constants aren't in the URB), nor do we have any state like that to upload.
* i965/gen4: Remove old VS unit state key structure.Eric Anholt2011-06-201-12/+0
| | | | We're streaming VS state out now, not caching it.
* i965/gen6: Add missing state flag for VS push constants.Eric Anholt2011-06-201-1/+1
| | | | It was already annotated up above and everything.
* i965/gen6+: Correct gratuitous dependency on NEW_POLYGONSTIPPLE.Eric Anholt2011-06-202-6/+11
| | | | That flag is for the contents of the stipple, not the enable flag.
* i965/gen6+: Add a missing state flag for WM constants.Eric Anholt2011-06-202-3/+6
|
* wayland: Pass use_invalidate extension to driverKristian Høgsberg2011-06-202-2/+3
|
* egl_dri2/x11: Check availability of the dri2 extensionBenjamin Franzke2011-06-201-0/+9
| | | | | Do this before query versions, or xcb will shutdown and the connection can not be used for swrast.
* docs: update EGL for changed configure optionsChia-I Wu2011-06-203-47/+27
|
* configure.ac: remove deprecated EGL optionsChia-I Wu2011-06-201-9/+0
|
* xorg/nouveau: rename to nouveau2Marcin Slusarz2011-06-202-8/+8
| | | | Signed-off-by: Marek Olšák <[email protected]>
* st/xorg: initialize drm_mode.typeMarcin Slusarz2011-06-201-0/+1
| | | | | | it's uninitialized, but used by kernel (drm_mode_setcrtc -> drm_mode_set_crtcinfo) Signed-off-by: Marek Olšák <[email protected]>
* st/xorg: add GALLIUM_AUXILIARIES to target dependenciesMarcin Slusarz2011-06-201-1/+1
| | | | | | Without it changes to GALLIUM_AUXILIARIES don't induce target rebuild Signed-off-by: Marek Olšák <[email protected]>
* gallium/nouveau: remove unused nouveau_screen_bo_userMarcin Slusarz2011-06-202-16/+0
|
* st/xorg: fix crash triggered by rendercheck -t composite -f a8r8g8b8 -o Src, ↵Marcin Slusarz2011-06-201-1/+1
| | | | | | Saturate samplers[0] may remain uninititialized if src picture/pixmap is null
* st/xorg: fix crash triggered by rendercheck -t blend -f a8r8g8b8 -o ClearMarcin Slusarz2011-06-201-2/+2
|
* r600g: implement seamless_cube_map on r600-r700Marek Olšák2011-06-203-7/+46
| | | | | st/mesa guarantees that all bound sampler states have the same value in seamless_cube_map.
* r600g: remove some magic numbersMarek Olšák2011-06-192-2/+13
|
* configure.ac: add back --enable-gallium-eglMarek Olšák2011-06-191-4/+27
|
* configure.ac: Avoid running llvm-config when it hadn't been checked for.Cyril Brulebois2011-06-191-0/+2
| | | | | | | | | | | | | | | | If --disable-gallium is passed, llvm-config isn't checked for, so mark it explicitly as absent, through LLVM_CONFIG=no. Passing --disable-gallium would result in: | ../configure: line 9739: --version: command not found | ../configure: line 9740: --cppflags: command not found | ../configure: line 9741: --libs: command not found | ../configure: line 9743: --ldflags: command not found With this commit, one gets that instead: | configure: error: LLVM is required to build Gallium R300 on x86 and x86_64 Signed-off-by: Cyril Brulebois <[email protected]>
* configure.ac: build r600g by defaultMarek Olšák2011-06-191-2/+2
| | | | Reviewed-by: Alex Deucher <[email protected]>
* configure.ac: add option --with-gallium-drivers=DIRSMarek Olšák2011-06-191-108/+57
| | | | | | | | | | | This removes all the --enable-gallium-$driver options and --disable-gallium. Gallium can be disabled by --with-gallium-drivers= (without parameters). Default is: --with-gallium-drivers=r300,swrast Reviewed-by: Alex Deucher <[email protected]>
* configure.ac: remove --with-state-trackersMarek Olšák2011-06-191-142/+75
| | | | | | | | | | | | | | | There is an obvious redundancy: --with-driver=dri VS --with-state-trackers=dri --with-driver=xlib VS --with-state-trackers=glx --enable-openvg VS --with-state-trackers=vega --enable-egl VS --with-state-trackers=egl This patch adds two new options for the remaining state trackers: --enable-xorg --enable-d3d1x Reviewed-by: Alex Deucher <[email protected]>
* configure.ac: remove redundant option --enable-gallium-eglMarek Olšák2011-06-191-26/+4
| | | | | | We already have --enable-gallium, --enable-egl, and --with-state-trackers=egl. Reviewed-by: Alex Deucher <[email protected]>
* u_vbuf_mgr: make u_vbuf_mgr_draw_begin return flags in a bitmaskMarek Olšák2011-06-194-36/+36
|
* r600g: fix warning: assignment discards qualifiers from pointer target typeMarek Olšák2011-06-191-1/+2
|
* u_vbuf_mgr: fix uploading if format size is greater than strideMarek Olšák2011-06-191-0/+5
|
* i965: Enable extension GL_ARB_shader_texture_lod.Kenneth Graunke2011-06-182-1/+2
| | | | | | | Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36987 Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/fs: Add support for TXD with shadow comparisons.Kenneth Graunke2011-06-185-7/+76
| | | | | | | | | | | | | | Our hardware doesn't have a sample_d_c message, so we have to do a regular sample_d and emit instructions to manually perform the comparison. This requires a state dependent recompile whenever the sampler's compare mode or function change. This adds the per-sampler comparison functions to brw_wm_prog_key, but only sets them when the sampler's compare mode is GL_COMPARE_R_TO_TEXTURE (i.e. only for shadow sampling). Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/fs: Refactor texture result swizzling into a helper function.Kenneth Graunke2011-06-182-9/+21
| | | | | | | The next patch will add a few additional uses. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/fs: Move sampler fetch to the top of the ir_texture visit function.Kenneth Graunke2011-06-181-6/+3
| | | | | | | | This makes it available earlier, which will soon be necessary. (Separating code motion from actual changes.) Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/fs: Add support for non-shadow textureGrad (TXD) on gen4.Kenneth Graunke2011-06-182-2/+39
| | | | | Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/fs: Add support for non-shadow textureGrad (TXD) on gen5/6.Kenneth Graunke2011-06-181-1/+31
| | | | | Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/fs: Add support for non-shadow textureGrad (TXD) on Ivybridge.Kenneth Graunke2011-06-182-10/+43
| | | | | | | | | | This is somewhat ugly, but I couldn't think of a nicer way to handle the interleaved coordinate/derivative parameter loading. Ironlake and Sandybridge will still hit an assertion in visit(). Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/fs: Check for compilation failure and bail before optimizing.Kenneth Graunke2011-06-181-0/+2
| | | | | | | | | | | | Prior to this patch, it would attempt to optimize and allocate registers for the program even if it failed to compile. This seems wasteful. More importantly, the "message length > 11" failure seems to choke the instruction scheduler, making it somehow use an undefined value and segmentation fault. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>