summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* scons: Add nvc0 to SConscript.Vinson Lee2011-01-241-0/+1
|
* vega: implement handler/pointer conversion using a hash tableBrian Paul2011-01-249-9/+175
| | | | Before, we were just casting between 32-bit VGHandles and 64-bit pointers.
* vega: remove redundant functions found elsewhereBrian Paul2011-01-241-10/+0
|
* vega: replace casts with pointer/handle conversion functionsBrian Paul2011-01-2411-165/+297
| | | | | | | | | Per the spec, all OpenVG handles are 32-bit. We can't just cast them to/from integers on 64-bit systems. Start fixing that mess by introducing a set of handle/pointer conversion functions in handle.h. The next step is to implement a handle/pointer hash table...
* svga: Add more swrast debugingJakob Bornecrantz2011-01-254-4/+34
|
* svga: Use get once helpers for context debug envsJakob Bornecrantz2011-01-251-4/+8
|
* rbug: Fix surface reference leakJakob Bornecrantz2011-01-251-3/+3
|
* r600g: FLT_TO_INT* are vector instructions on Evergreen.Henri Verbeet2011-01-251-2/+2
| | | | | | FLT_TO_INT is a vector instruction, despite what the (current) documentation says. FLT_TO_INT_FLOOR and FLT_TO_INT_RPI aren't explicitly mentioned in the documentation, but those are vector instructions too.
* graw: add a test showing the new sampling scheme in actionZack Rusin2011-01-241-0/+415
|
* gallium: implement modern sampling schemeZack Rusin2011-01-2417-34/+767
| | | | | | | | | | | largely a merge of the previously discussed origin/gallium-resource-sampling but updated. the idea is to allow arbitrary binding of resources, the way opencl, new gl versions and dx10+ require, i.e. DCL RES[0], 2D, FLOAT LOAD DST[0], SRC[0], RES[0] SAMPLE DST[0], SRC[0], RES[0], SAMP[0]
* draw: Do not use LLVM's opaque types.José Fonseca2011-01-241-1/+1
| | | | | | | | | | | | | | | | | | | | | Contrary what the name may suggest, LLVM's opaque types are used for recursive types -- types whose definition refers itself -- so opaque types correspond to pre-declaring a structure in C. E.g.: struct node; struct link { .... struct node *next; }; struct node { struct link link; } Void pointers are also disallowed by LLVM. So the suggested way of creating what's commonly referred as "opaque pointers" is using byte pointer (i.e., uint8_t * ).
* secure malloc in translate_cache_createTim Wiederhake2011-01-241-0/+4
| | | | Signed-off-by: Brian Paul <[email protected]>
* st/xorg: Fix build failure against xserver with XF86_CRTC_VERSION < 3.Michel Dänzer2011-01-241-4/+2
| | | | Reported by Vinson Lee.
* r300g: remove unused functionMarek Olšák2011-01-241-22/+0
|
* r300g: remove any traces of depth_clampMarek Olšák2011-01-242-3/+2
| | | | | | | | I couldn't make it work. GB_TILE_CONFIG.Z_EXTENDED, which enables per-pixel Z clamping, and VAP_CLIP_CNTL.CLIP_DISABLE, which disables clipping, do help, but they also add regressions like random graphics corruptions in some games.
* r300g: handle PIPE_CAP_INSTANCED_DRAWING in get_paramMarek Olšák2011-01-241-0/+1
|
* util: Add function logger helpersJakob Bornecrantz2011-01-242-0/+72
|
* Revert "r300g/swtcl: re-enable LLVM"Jakob Bornecrantz2011-01-243-24/+1
| | | | This reverts commit 88550083b3857184445075e70fed8b2eed4952a1.
* draw: Init llvm if not providedJakob Bornecrantz2011-01-243-4/+18
|
* i915g: Remove draw_flushes and state that we don't need to trackJakob Bornecrantz2011-01-243-35/+16
|
* i915g: Improve constant handlingJakob Bornecrantz2011-01-241-7/+17
|
* r300g: Increase fragment shader limits for r400 cardsTom Stellard2011-01-233-39/+88
| | | | | r400 fragment shaders now support up to 64 temporary registers, 512 ALU instructions, and 512 TEX instructions.
* nvc0: implement point coord replacementChristoph Bumiller2011-01-234-11/+59
| | | | | | | | | | | But we have to cheat and peek at the GENERIC semantic indices the state tracker uses for TEXn. Only outputs from 0x300 to 0x37c can be replaced, and so we have to know on shader compilation which ones to put there in order to keep doing separate shader objects properly. At some point I'll probably create a patch that makes gallium not force us to discard the information about what is a TexCoord.
* vega: sort filenames in Makefile, SConscriptBrian Paul2011-01-232-23/+24
|
* r300g: support sRGB colorbuffersMarek Olšák2011-01-232-6/+52
| | | | | | We are not required to do the linear->sRGB conversion if ARB_framebuffer_sRGB is unsupported. However I think the conversion should work in hw except for blending, which matches the D3D9 behavior.
* r300/compiler: remove any code related to relative addressing of temporariesMarek Olšák2011-01-234-1/+25
| | | | | The hw can't do it and the code was useless anyway (it's lowered in the GLSL compiler).
* nvc0: fix emit_cvt for ceil, floor and truncChristoph Bumiller2011-01-232-13/+22
|
* nvc0: remove bad assert and emit TEMP movs insteadChristoph Bumiller2011-01-231-2/+1
|
* nvc0: fix address and value slot assignment in load combiningChristoph Bumiller2011-01-231-1/+6
|
* nvc0: don't omit highest bit of branch targetChristoph Bumiller2011-01-231-1/+1
| | | | Fixes negative relative branch offsets.
* nvc0: recognize r63 as zero in constant foldingChristoph Bumiller2011-01-233-13/+9
|
* nvc0: add MARK_RING where missing to avoid too many relocs errorsChristoph Bumiller2011-01-236-4/+19
|
* nvc0: don't apply base vertex to per-instance arraysChristoph Bumiller2011-01-231-1/+3
|
* nvc0: commute sources of SET too if beneficialChristoph Bumiller2011-01-232-2/+2
|
* nvc0: accept neg abs modifiers on lg2Christoph Bumiller2011-01-231-1/+1
|
* softpipe: pass surface format to get/put_tile functionsBrian Paul2011-01-221-10/+12
| | | | | | | | | | | | | When we read/write image tiles we need to use the format specified in the pipe_surface, not the pipe_transfer format (which comes from the underlying texture/resource format). This comes up when rendering to sRGB surfaces (via OpenGL render to texture). Ignoring the new GL_ARB/EXT_framebuffer_sRGB extension for now, when we render to a sRGB surface we need to treat it like a regular, linear colorspace RGB surface. Before, when we read/wrote tiles to sRGB surfaces we were inadvertantly doing the color space conversion.
* gallium/util: added pipe_put_tile_rgba_format()Brian Paul2011-01-222-1/+18
|
* gallium/util: simplify pipe_get_tile_rgba()Brian Paul2011-01-221-20/+1
| | | | Implement it in terms of pipe_get_tile_rgba_format()
* gallium/softpipe: replace pipe_get_tile_swizzle()Brian Paul2011-01-223-70/+20
| | | | | | The new function, pipe_get_tile_rgba_format(), no longer takes a swizzle (we weren't actually using it anywhere). Rename it to indicate that the format is passed explicitly.
* softpipe: use proper type for format fieldBrian Paul2011-01-221-1/+1
|
* gallium/util: added util_format_linear()Brian Paul2011-01-221-1/+41
|
* scons: Add support for GLES.Chia-I Wu2011-01-225-4/+30
| | | | | | | | | | | | | | | | | | GLES can be enabled by running scons with $ scons gles=yes When gles=yes is given, the build is changed in three ways. First, libmesa.a will be built with FEATURE_ES1 and FEATURE_ES2. This makes DRI drivers and libEGL support and advertise GLES support. Second, GLES libraries will be created. They are libGLESv1_CM, libGLESv2, and libglapi. Last, libGL or opengl32 will link to libglapi. This change is required as _glapi_* will be declared as __declspec(dllimport) in libmesa.a on windows. libmesa.a expects those symbols to be defined in another DLL. Due to this change to GL, GLES support is marked experimental. Note that GLES requires libxml2-python to generate some of its sources.
* i915g: Don't (un)map vbuf on each (un)map callJakob Bornecrantz2011-01-211-4/+12
|
* i915g: Don't do unnecessary copies of constantsJakob Bornecrantz2011-01-215-25/+32
| | | | | Even tho st/mesa use user buffers for constants align buffers other state trackers doesn't use user buffers.
* i915g: Don't emit FS constants when VS contants changeJakob Bornecrantz2011-01-215-11/+31
|
* i915g: Use slab allocator for transfersJakob Bornecrantz2011-01-215-21/+55
| | | | Also remove unused i915_transfer struct
* st/dri: Fix warningJakob Bornecrantz2011-01-211-0/+1
|
* r600g: check if hardware blits are possible bevore enabling tillingChristian König2011-01-211-41/+40
|
* r600g: FLT_TO_INT_FLOOR is trans instructionAlex Deucher2011-01-211-0/+1
| | | | Add missing evergreen FLT_TO_INT_FLOOR instruction.
* softpipe: check for null pointers during context create/destroyBrian Paul2011-01-201-5/+21
| | | | | | See http://bugs.freedesktop.org/show_bug.cgi?id=32309 Apparently, malloc() is failing during context creation. Not checking for nulls here led to crashes elsewhere.