summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-06-30glu: Fix some compiler warnings in libtessNeil Roberts
When compiled with the more aggressive compiler warnings such as -Wshadow and -Wempty-body the libtess code gives a lot more warnings. This fixes the following issues: * The 'Swap' macro tries to combine multiple statements into one and then consume the trailing semicolon by using if(1){/*...*/}else. This gives warnings because the else part ends up with an empty statement. It also seems a bit dangerous because if the semicolon were missed then it would still be valid syntax but it would just ignore the following statement. This patch replaces it with the more common idiom do { /*...*/ } while(0). * 'free' was being used as a local variable name but this shadows the global function. This has been renamed to 'free_handle' * TRUE and FALSE were being unconditionally defined. Although this isn't currently a problem it seems better to guard them with #ifndef because it's quite common for them to be defined in other headers. https://bugs.freedesktop.org/show_bug.cgi?id=28845 Signed-off-by: Brian Paul <brianp@vmware.com>
2010-06-30egl: Update MaxSize when a dynamic array is grown.Chia-I Wu
2010-06-30egl: Make _eglUnloadDrivers no-op on Windows.Chia-I Wu
Windows unloads DLLs before atexit. Make _eglUnloadDrivers no-op on Windows for now.
2010-06-30st/egl: Manually free configs on terminate.Chia-I Wu
The configs should be FREE()ed, not free()ed. We cannot rely on _eglCleanupDisplay here.
2010-06-30egl: Store screens in a dynamic array.Chia-I Wu
2010-06-30egl: Store configs in a dynamic array.Chia-I Wu
2010-06-30egl: Add dynamic array.Chia-I Wu
Dynamic arrays will be used to store configs and screens of a display.
2010-06-30st/vega: Match MALLOC/FREE for vg_shader.Chia-I Wu
A vg_shader is destroyed with FREE.
2010-06-30llvmpipe: Add a new scene state to describe scenes which only have state ↵José Fonseca
changes. It's a rare condition, but it may happen if all primitives are clipped/culled. For now we just do a no-op rasterization, but we could bypass it.
2010-06-30llvmpipe: Don't reset the bin when there's a zsbuf bound.José Fonseca
The previous rendering may have secondary effects on the zsbuf. Fixes the missing tiles on gearbox.
2010-06-30st/vega: s/free/FREE for matching MALLOC/CALLOCnobled
[Manually fix a conflict in vg_context.c by Chia-I Wu]
2010-06-30st/xorg: s/free/FREE for matching MALLOC/CALLOCnobled
2010-06-30st/egl: Add egl-gdi target.Chia-I Wu
The target supports OpenVG on Windows with software rasterizer. The egl_g3d_loader defined by the target supports arbitrary client APIs and window systems. It is the SConscript that limits the support to OpenVG and GDI. This commit also fixes a typo in gdi backend.
2010-06-30mesa: Use fpclassify for GL_OES_query_matrix on OpenBSD and NetBSD.Chia-I Wu
Patch from Brad Smith <brad@comstyle.com> The attached patch allows the GL_OES_query_matrix function to use the systems fpclassify() for OpenBSD and NetBSD.
2010-06-29mesa: make the arguments in the asm statemants optionalZack Rusin
geometry shaders emit/end functions don't take any arguments
2010-06-30r300g: add workaround for multiple contextsMarek Olšák
2010-06-30r300g: move one flush from winsys to the contextMarek Olšák
This flush happens when changing the tiling flags, and it should really be done in the context. I hope this fixes FDO bug #28630.
2010-06-29llvmpipe: don't crash/assert on out of memoryBrian Paul
Check for null pointers and return early, etc.
2010-06-29llvmpipe: restore call to lp_setup_update_state()Brian Paul
This undoes part of commit 8be645d53a0d5d0ca50e4e9597043225e2231b6d and fixes fd.o bug 28822 as well as other regressions. The 'draw' module may issue additional state-change commands while we're inside the draw_arrays/elements() call so it's important to check for updated state at this point.
2010-06-29egl: Check for drm winsys not just the driver nameJakob Bornecrantz
Also fix pipe_radeon.so not building
2010-06-29draw: Add inline keyword to inline function.José Fonseca
Otherwise gcc will warn about unusued functions.
2010-06-29i915g: Fix copy pastoJakob Bornecrantz
2010-06-29egl: Fix gallium build when EGL is not installed on systemJakob Bornecrantz
2010-06-29i915g: Add missing egl pipe fileJakob Bornecrantz
2010-06-29egl: Remove st/egl probe code.Chia-I Wu
It is no longer needed.
2010-06-29egl: Do not call drv->Initialize with global mutex locked.Chia-I Wu
2010-06-29st/egl: Build a single EGL driver.Chia-I Wu
This change makes st/egl build a single egl_gallium.so and multiple st_<API>.so and pipe_<HW>.so. When a display is initialized, the corresponding pipe driver will be loaded. When a context is created, the corresponding state tracker will be loaded. Unlike DRI drivers, no ABI compatibility is maintained. egl_gallium, pipe drivers and state trackers should always be distributed as a single package. As such, there is only a single src/gallium/targets/egl/ that builds everything for the package.
2010-06-29st/egl: Move module loading code to targets.Chia-I Wu
Several changes are made. libegl.a no longer defines _eglMain. It defines functions to create and destroy a _EGLDriver instead. The creation function is called by the targets. It takes an egl_g3d_loader as its argument. The loader is defined by the targets and is in charge of creating st_api and pipe_screen. This allows us to move the module loading code to targets. Lastly, the modules are now loaded as the respective contexts are created.
2010-06-29st/egl: Reorganize targets.Chia-I Wu
Merge all targets into targets/egl/. The target produces egl_gallium_<HW>.so for each pipe driver and st_<API>.so for each client APIs. This enables us to further merge egl_gallium_<HW>.so into egl_gallium.so later.
2010-06-29st/egl: One driver per hardware.Chia-I Wu
Merge multiple egl_<platform>_<pipe>.so into a single egl_gallium_<pipe>.so. The environment variable EGL_PLATFORM is now used to modify the return value of _eglGetNativePlatform.
2010-06-29st/egl: Introduce native_platform.Chia-I Wu
Move native_get_name, native_create_probe, native_get_probe_result, and native_create_display into struct native_platform, and add native_get_platform to get a handle to the struct.
2010-06-29st/egl: Make api_OpenGL support OpenGL ES.Chia-I Wu
This allows api_OpenGL.so to support OpenGL ES.
2010-06-29st/mesa: Add support for multiple APIs.Chia-I Wu
Add st_gl_api_create_es1 and st_gl_api_create_es2 to create OpeGL ES 1.1 and OpenGL ES 2.0 contexts respectively.
2010-06-29st_api: Remove st_context::is_visual_supported.Chia-I Wu
The callback is used by st/vega to check if a visual specifies the depth/stencil format. It forces st/vega to be loaded by st/egl to perform the check. As noted in EGL spec, the depth/stencil format of a visual should not affect OpenVG. It should be better to ignore the field and always allocate the depth/stencil texture.
2010-06-28mesa: initial support for ARB_geometry_shader4Zack Rusin
laying down the foundation for everything and implementing most of the stuff. linking, gl_VerticesIn and multidimensional inputs are left.
2010-06-29util: reference surfaces and sampler views in blitter when saving themMarek Olšák
Ooops. This should possibly fix some bugs...
2010-06-28i915g: Add Galahad to targetsJakob Bornecrantz
2010-06-28r300g: Galahad for scons as wellJakob Bornecrantz
2010-06-28r300g: Add target defines for GalahadJakob Bornecrantz
2010-06-28glhd: Build with sconsJakob Bornecrantz
2010-06-28glhd: Re-integrate with the debug systemJakob Bornecrantz
2010-06-28glhd: Remove leftover fileJakob Bornecrantz
2010-06-28Merge branch 'gallium-drm-driver-drescriptor'Jakob Bornecrantz
Conflicts: src/gallium/state_trackers/egl/x11/native_dri2.c src/gallium/state_trackers/egl/x11/native_x11.c src/gallium/state_trackers/egl/x11/native_x11.h src/gallium/state_trackers/xorg/xorg_driver.c src/gallium/winsys/radeon/drm/radeon_drm.c
2010-06-28llvmpipe: set WRITE_ALL only a per-tile basis in lp_resource_copy().José Fonseca
2010-06-28llvmpipe: Actually flush in lp_resource_copy()José Fonseca
The cpu_access is redundant in a software rasterizer.
2010-06-28llvmpipe: Ensure outdated framebuffer state is not reused in ↵José Fonseca
lp_setup_bind_framebuffer(). We were starting a scene whenever lp_setup_get_vertex_info() was called by the draw module. So when when all primitives were culled/clipped, not only did we create a new scene for nothing, but we end up using the old scene with the old framebuffer state instead of a new one. Fix consists in: - don't call lp_setup_update_state() in lp_setup_get_vertex_info() -- no longer necessary - always setting the scene state before binning a command -- query commands were bypassing it - assert no old scene is reused in lp_setup_bind_framebuffer()
2010-06-27r300g: fix a compile error on non-debug buildsMarek Olšák
2010-06-27util: fix a memory leak in blitterMarek Olšák
2010-06-27r300g: separate the hyperz state and pipelined FB regs out of the FB stateMarek Olšák
2010-06-27r300g: release referenced objects in destroy_contextMarek Olšák