summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* egl: Overhaul driver API.Chia-I Wu2009-08-185-165/+102
| | | | | | | | | | | | The motivation is so that drivers do not need to look up and check for bad display, context, and etc. It also becomes unnecessary for drivers to call the link functions. This commit makes eglapi.[ch] do the lookup and check. As a result, the driver API is overhauled, and almost all sources and drivers need update. The updates are mainly find and replace with human brains. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
* gallium: memset() tgsi_exec_machine to all zeros in tgsi_exec_machine_create()Brian Paul2009-08-171-8/+2
| | | | This fixes invalid values for CondStackTop, LoopStackTop, etc.
* nv50: remove a few cases of directly casting struct pipe_contextMaarten Maathuis2009-08-172-3/+3
|
* nv50: borrow some flushing code from the ddxMaarten Maathuis2009-08-171-3/+11
| | | | | - This fixes neverball corruption. - I'm unsure about what we're actually flushing here.
* gallium: Make PIPE_TRANSFER_{READ,WRITE,READ_WRITE} bitmask friendly.Maarten Maathuis2009-08-171-3/+3
|
* nv50: whitespace fixes and deobfuscationMaarten Maathuis2009-08-179-69/+85
|
* cell: fix incorrect pipe_transfer testsBrian Paul2009-08-171-2/+4
| | | | The value is an enum, not a bitmask.
* nv50: fix stencil stateChristoph Bumiller2009-08-171-6/+6
| | | | | | | It's the front stencil methods that have contiguous offsets, not the back ones. Unfortunately the names in the header still have FRONT/BACK reversed, so I'm using hex values until it gets updated.
* nv50: avoid a NULL-ptr dereference when the pipe context changesMaarten Maathuis2009-08-151-1/+26
| | | | - We cannot assume all state objects are present when the pipe context changes.
* nv50: align registers used with TEX to 4Christoph Bumiller2009-08-151-1/+2
| | | | | | | | The TEX instruction is passed the first index of a contiguous range of 4 TEMP registers that contain coordinates / LOD and, after execution, the texel values. It seems the first index is required to be a multiple of 4 on some (older ?) cards.
* st/xlib: reduce the proliferation of GLX context typesKeith Whitwell2009-08-141-57/+37
| | | | | | | | | | Now there is just a single, struct __GLXcontextRec, which is the GLXContext typedef has already been defined as a pointer to. I believe this is the intended usage, that GLX implementations should define that struct as they require. Merge the two previous structs into one and get rid of the no-longer-necessary type casts and sub-classing.
* st/dri: remove unused dummyContext valueKeith Whitwell2009-08-142-14/+0
|
* nv50: fix mipmap offsets and tilingChristoph Bumiller2009-08-143-17/+34
| | | | | | The hardware expects a texture's tile mode to change with the mipmap level. Also, only multiply by block size once to obtain size.
* nv50: make sure we don't re-emit outdated scissor stateChristoph Bumiller2009-08-141-4/+4
| | | | | Since we don't turn off scissors, we need to update the stateobj when the framebuffer size changes.
* nv50: make use of the y-origin switchChristoph Bumiller2009-08-142-25/+16
| | | | | Now that we know how to make the hardware have y-coordinate origin top, we can get rid of all the inversion introduced earlier.
* st/vega: Add more symbols defined by mesa/st.Chia-I Wu2009-08-142-3/+18
| | | | Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
* nv50: fix typo in REALLOC's 2nd argument in ctor_immdChristoph Bumiller2009-08-141-1/+1
|
* st/dri: Add support for GLX_EXT_texture_from_pixmap with direct rendering.Michel Dänzer2009-08-133-0/+37
|
* gallium/drm: Handle circular dependencies in the auxiliary libraries with make.Michel Dänzer2009-08-131-1/+3
|
* st/xorg: Fix DRI2 CopyRegion hook.Michel Dänzer2009-08-131-29/+43
| | | | | Use GC CopyArea op for proper translation and clipping, and throttle full buffer swaps / frontbuffer flushes.
* tgsi: add simple facility for releasing and reusing temporariesKeith Whitwell2009-08-132-4/+40
|
* tgsi: rename ureg src/dest convertersKeith Whitwell2009-08-131-3/+3
| | | | Also fix a typo in ureg_src().
* draw: Remove unused variable.José Fonseca2009-08-131-1/+0
|
* Merge branch 'mesa_7_5_branch'Keith Whitwell2009-08-131-22/+55
|\
| * draw: cope with more primitives in draw_pipeline_runKeith Whitwell2009-08-131-22/+55
| | | | | | | | | | | | | | | | This previously was used only for decomposed (POINT/LINE/TRI) primitives, but for some time a full range of primitives could end up in here. Fixes trivial/lineloop-clip on softpipe, among others. (cherry picked from commit 87cd8a3b8a2407b30916be418ff2f95dfea5d2ad)
| * util: fix incorrect assertionBrian Paul2009-08-061-1/+1
| | | | | | | | Check that the dest surface/format is renderable.
| * util: include u_surface.h, added commentBrian Paul2009-08-061-0/+2
| |
| * util: use util_same_surface() to compare surface pointersBrian Paul2009-08-061-3/+3
| |
| * util: added util_same_surface() helper functionBrian Paul2009-08-061-0/+17
| |
* | tgsi: turn off debuggingKeith Whitwell2009-08-131-1/+1
| |
* | tgsi: use REALLOC for growing token poolKeith Whitwell2009-08-131-11/+5
| |
* | util: silence warnings for third REALLOC argumentKeith Whitwell2009-08-131-1/+7
| | | | | | | | | | | | Our fallback realloc path requires an old_size argument, but the posix varient doesn't need this. Add some code to avoid gcc unused variable warnings for this extra argument.
* | util: remove unneeded includesKeith Whitwell2009-08-131-4/+0
| |
* | util: convert u_simple_shaders to use tgsi_uregKeith Whitwell2009-08-131-258/+60
| | | | | | | | Much nicer now.
* | tgsi: add tgsi_ureg, a simplified tgsi shader builderKeith Whitwell2009-08-135-0/+1381
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is modelled on the nice & easy-to-use facilities we had for building shaders in mesa, eg. in texenvprogram.c and friends. Key points include pass-by-value register structs that can be manipulated in a functional style, eg: negate(swizzle(reg, X,X,X,X)) and per-opcode instruction functions, eg: emit_MOV( p, writemask(dst, 0x1), negate(src)); and similar. Additionally, the interface allows mixed emit of instructions and decls, which are sorted out internally to obey TGSI ordering. Immediates may be emitted at any time and are scanned against existing immediates to try and reduce redundancy. Not all TGSI functionality is accessible through this interface, but most or all of what mesa uses should be.
* | Merge branch 'new-frag-attribs'Brian Paul2009-08-121-12/+36
|\ \ | | | | | | | | | | | | | | | | | | This branch introduces new FRAG_ATTRIB_FACE and FRAG_ATTRIB_PNTC fragment program inputs for GLSL gl_FrontFacing and gl_PointCoord. Before, these attributes were packed with the FOG attribute. That made things complicated elsewhere.
| * | draw: fix-ups for point coord attributeBrian Paul2009-07-311-12/+36
| | | | | | | | | | | | progs/glsl/pointcoord.c works again
* | | st/xorg: Acquire/drop DRM master in order to work with multiple servers.Michel Dänzer2009-08-121-0/+15
| | |
* | | gallium/glx/xlib: main/ prefix on Mesa includes, remove -I$(TOP)/src/mesa/main/Brian Paul2009-08-124-10/+9
| | |
* | | gallium/glx/xlib: updated commentsBrian Paul2009-08-123-4/+2
| | |
* | | gallium/glx/xlib: delete fakeglx.hBrian Paul2009-08-121-41/+0
| | |
* | | gallium/glx/xlib: rename fakeglx.c to glx_api.cBrian Paul2009-08-123-2/+2
| | |
* | | gallium/glx/xlib: delete glxapi.hBrian Paul2009-08-121-36/+0
| | |
* | | gallium/glx/xlib: rename fakeglx_fonts.c to glx_usefont.cBrian Paul2009-08-123-2/+2
| | |
* | | gallium/glx/xlib: rename glxapi.c to glx_getproc.cBrian Paul2009-08-123-2/+3
| | |
* | | gallium/glx/xlib: don't include fakeglx.hBrian Paul2009-08-121-1/+0
| | |
* | | gallium/glx/xlib: overhaul and simplification of the Gallium Xlib-based GLXBrian Paul2009-08-124-1574/+280
| | | | | | | | | | | | | | | | | | | | | | | | | | | The old GLX dispatch table stuff isn't needed (same story for the Mesa/Xlib driver). The intention of that code was being able to switch on the fly between the real GLX library and the fake/Xlib-based emulation. That hasn't been used in a long time. Next up: some file renaming.
* | | gallium/trace: remove stray semicolonsBrian Paul2009-08-111-2/+2
| | |
* | | gallium/xlib: add missing tex_usage parameterBrian Paul2009-08-111-0/+1
| | |
* | | gallium/egl: add missing tex_usage parameterBrian Paul2009-08-111-0/+1
| | |