Brian Paul [Wed, 2 Jul 2008 23:10:42 +0000 (17:10 -0600)]
mesa: additional GLSL built-in constants
Brian Paul [Wed, 2 Jul 2008 23:08:47 +0000 (17:08 -0600)]
mesa: when linking a shader program, make sure all the shaders compiled OK
cherry-picked from master
Brian Paul [Wed, 2 Jul 2008 23:08:28 +0000 (17:08 -0600)]
mesa: added some debug code (disabled)
cherry-picked from master
Brian Paul [Wed, 2 Jul 2008 23:08:09 +0000 (17:08 -0600)]
mesa: fix error codes in _mesa_shader_source(), _mesa_get_shader_source()
If the 'shader' parameter is wrong, need to either generate GL_INVALID_VALUE
or GL_INVALID_OPERATION. It depends on whether 'shader' actually names a
'program' or is a totally unknown ID.
There might be other cases to fix...
cherry-picked from master
Brian Paul [Wed, 2 Jul 2008 23:06:26 +0000 (17:06 -0600)]
mesa: regenerated file
Brian Paul [Wed, 2 Jul 2008 23:05:56 +0000 (17:05 -0600)]
mesa: added some missing equal() notEqual() intrinsics
cherry-picked from master
Brian Paul [Wed, 2 Jul 2008 18:47:18 +0000 (12:47 -0600)]
mesa: disable some debug assertions
We can sometimes fail these assertions because of how swizzled storage
works. Will revisit someday.
Brian Paul [Wed, 2 Jul 2008 18:46:18 +0000 (12:46 -0600)]
mesa: regenerated files
Brian Paul [Wed, 2 Jul 2008 18:45:55 +0000 (12:45 -0600)]
mesa: fix all(bvec2) function typo, add missing bvec2/3/4() constuctors
cherry-picked from master
Brian Paul [Wed, 2 Jul 2008 18:41:18 +0000 (12:41 -0600)]
gallium: replace 128 with MAX_LABELS
Brian Paul [Wed, 2 Jul 2008 18:40:03 +0000 (12:40 -0600)]
mesa: added _mesa_print_swizzle() debugging helper
Roland Scheidegger [Wed, 2 Jul 2008 18:08:27 +0000 (20:08 +0200)]
mesa: fix issues around multisample enable
multisample enable is enabled by default, however gl mandates multisample
rendering rules only apply if there's also a multisampled buffer.
Michel Dänzer [Wed, 2 Jul 2008 10:10:15 +0000 (12:10 +0200)]
gallium: Allow draw module to work on non-x86 platforms again.
José Fonseca [Wed, 2 Jul 2008 03:24:19 +0000 (12:24 +0900)]
pipebuffer: Debug buffer manager to detect buffer under- and overflows.
It should detect both cpu and gpu buffer overflows.
José Fonseca [Wed, 2 Jul 2008 03:22:51 +0000 (12:22 +0900)]
pipebuffer: Verify usage flag consistency. Minor cleanups.
Brian Paul [Wed, 2 Jul 2008 00:40:23 +0000 (18:40 -0600)]
mesa: fix a GLSL vector subscript/writemask bug
This fixes a failure for cases like:
vec4 v;
v[1] *= 2.0;
The v[1] actually acts like a writemask, equivalent to v.y
The fix is a bit convoluted, but will do for now.
cherry-picked from master
Brian Paul [Wed, 2 Jul 2008 00:39:46 +0000 (18:39 -0600)]
mesa: move some functions
cherry-picked from master
Brian Paul [Wed, 2 Jul 2008 00:39:22 +0000 (18:39 -0600)]
mesa: make _slang_swizzle_swizzle() non-private
cherry-picked from master
Brian Paul [Tue, 1 Jul 2008 17:48:57 +0000 (11:48 -0600)]
mesa: better function inlining in the presence of 'return' statements
Before, the presence of a 'return' statement always prevented inlining
a function. This was because we didn't want to accidentally return from
the _calling_ function. We still need the semantic of 'return' when inlining
but we can't always use unconditional branches/jumps (GPUs don't always
support arbitrary branching).
Now, we allow inlining functions w/ return if the return is the last
statement in the function. This fixes the common case of a function
that returns a value, such as:
vec4 square(const in vec4 x)
{
return x * x;
}
which effectively compiles into:
vec4 square(const in vec4 x)
{
__retVal = x * x;
return;
}
The 'return' can be no-op'd now and we can inline the function.
cherry-picked from master
Brian Paul [Tue, 1 Jul 2008 17:48:27 +0000 (11:48 -0600)]
mesa: add/fix some IrInfo entries for debugging purposes
cherry-picked from master
Jakob Bornecrantz [Tue, 1 Jul 2008 13:52:37 +0000 (15:52 +0200)]
i915: Last reference to surface -> pitch
José Fonseca [Tue, 1 Jul 2008 13:04:58 +0000 (22:04 +0900)]
gallium: Use the inline keyword on C++.
José Fonseca [Tue, 1 Jul 2008 13:04:01 +0000 (22:04 +0900)]
scons: Output mapfile on windows ddk profile builds.
José Fonseca [Mon, 30 Jun 2008 03:49:14 +0000 (12:49 +0900)]
gles: Don't define GLAPIENTRY here.
Brian Paul [Sat, 28 Jun 2008 22:47:39 +0000 (16:47 -0600)]
mesa: added null ptr checks
Brian Paul [Sat, 28 Jun 2008 22:47:22 +0000 (16:47 -0600)]
s/GL_INVALID_VALUE/GL_INVALID_OPERATION/ in _mesa_get_uniformfv()
Brian Paul [Sat, 28 Jun 2008 22:15:03 +0000 (16:15 -0600)]
mesa: check FEATURE_point_size_array
Brian Paul [Sat, 28 Jun 2008 22:04:01 +0000 (16:04 -0600)]
egl: set config's EGL_CONFORMANT, EGL_RENDERABLE_TYPE, EGL_SURFACE_TYPE attributes
Brian Paul [Sat, 28 Jun 2008 22:03:28 +0000 (16:03 -0600)]
egl: fix default value of EGL_SURFACE_TYPE, added some sanity check assertions
José Fonseca [Sat, 28 Jun 2008 11:40:44 +0000 (20:40 +0900)]
egl: WinCE doesn't have sys/types.h
Zack Rusin [Fri, 27 Jun 2008 20:47:22 +0000 (16:47 -0400)]
egl: helps if the stride is right
Zack Rusin [Fri, 27 Jun 2008 19:56:09 +0000 (15:56 -0400)]
eh, we need a buildbot... fix the compilation
Roland Scheidegger [Fri, 27 Jun 2008 14:02:43 +0000 (16:02 +0200)]
gallium: handle msaa
Robert Ellison [Thu, 26 Jun 2008 14:55:00 +0000 (08:55 -0600)]
egl: These changes allow an eglBindAPI(EGL_OPENGL_ES_API) to succeed, and to work correctly with GLES1 and GLES2.
- egl_xdri.c just sets the EGL_OPENGL_ES_BIT as well as the
EGL_OPENGL_BIT in ClientAPIsMask
- eglconfig.c allows the renderable type to include EGL_OPENGL_ES2_BIT
as well as EGL_OPENGL_ES_BIT.
- egl_xlib.c sets the EGL_NATIVE_RENDERABLE attribute to EGL_FALSE for
all softpipe configurations. (Otherwise, an eglChooseConfig() that
looks for particular values of EGL_NATIVE_RENDERABLE will fail.)
Jonathan White [Fri, 27 Jun 2008 13:13:30 +0000 (07:13 -0600)]
egl: Windows updates to the platform.h files
Jakob Bornecrantz [Fri, 27 Jun 2008 12:16:42 +0000 (14:16 +0200)]
i915: Fix the last of the stride/pitch changes
José Fonseca [Fri, 27 Jun 2008 11:56:49 +0000 (20:56 +0900)]
mesa: Replace void * arithmetic.
José Fonseca [Fri, 27 Jun 2008 11:56:29 +0000 (20:56 +0900)]
gdi: Update for cpp removal.
José Fonseca [Fri, 27 Jun 2008 11:10:04 +0000 (20:10 +0900)]
cell: Update for cpp removal.
Not tested -- just mymic the softpipe changes.
José Fonseca [Fri, 27 Jun 2008 10:37:56 +0000 (19:37 +0900)]
gallium: Drop pipe_texture->cpp and pipe_surface->cpp.
The chars-per-pixel concept falls apart with compressed and yuv images,
where more than one pixel are coded in a single data block.
José Fonseca [Fri, 27 Jun 2008 04:41:23 +0000 (13:41 +0900)]
scons: Get x86-64<->x86 cross build of assembly files right.
José Fonseca [Fri, 27 Jun 2008 04:01:37 +0000 (13:01 +0900)]
scons: Fix i965/xlib build.
José Fonseca [Fri, 27 Jun 2008 03:35:18 +0000 (12:35 +0900)]
scons: Fix typo.
José Fonseca [Fri, 27 Jun 2008 03:34:57 +0000 (12:34 +0900)]
mesa: Use the appropriate relocation.
I don't fully understand this, but this matches the assembly code gcc
generates glapi.c and fixes following error on x86-64 with assembly:
relocation R_X86_64_PC32 against `_gl_DispatchTSD' can not be used when making a shared object
José Fonseca [Thu, 26 Jun 2008 14:39:13 +0000 (23:39 +0900)]
gallium: Describe pixel block.
Chars-per-pixel paradigm is not enough to represent compressed and yuv
pixel formats.
Brian Paul [Wed, 25 Jun 2008 14:45:14 +0000 (08:45 -0600)]
mesa: point size arrays
Brian Paul [Tue, 24 Jun 2008 14:47:15 +0000 (08:47 -0600)]
gallium: remove some old dispatch code
Brian Paul [Tue, 24 Jun 2008 14:45:59 +0000 (08:45 -0600)]
gallium: remove bad assertion
Jakob Bornecrantz [Tue, 24 Jun 2008 14:06:59 +0000 (16:06 +0200)]
gallium: Fix whole source being used in u_blit
José Fonseca [Tue, 24 Jun 2008 13:26:19 +0000 (22:26 +0900)]
Fix CRLF line endings.
José Fonseca [Tue, 24 Jun 2008 13:17:39 +0000 (22:17 +0900)]
Allow CRLF automatic conversion on MSVC project files.
MSVC doesn't really care, and it is frequently causing merge conflicts.
Jakob Bornecrantz [Tue, 24 Jun 2008 12:42:12 +0000 (14:42 +0200)]
i915: Create a texture and surface for shared frontbuffer
Jakob Bornecrantz [Tue, 24 Jun 2008 12:19:30 +0000 (14:19 +0200)]
i915: Added texture_blanket function
Jakob Bornecrantz [Tue, 24 Jun 2008 11:09:43 +0000 (13:09 +0200)]
i915: Moved screen creation to intel_be_device
Jakob Bornecrantz [Tue, 24 Jun 2008 11:00:42 +0000 (13:00 +0200)]
gallium: Fix warning in u_blit.h
Jakob Bornecrantz [Tue, 24 Jun 2008 12:30:38 +0000 (14:30 +0200)]
egl: Stdint was missing from eglconfigutil.h
José Fonseca [Tue, 24 Jun 2008 11:44:47 +0000 (20:44 +0900)]
mesa: Fix Windows GDI winsys build.
José Fonseca [Tue, 24 Jun 2008 05:22:09 +0000 (14:22 +0900)]
gallium: Avoid double arithmetic.
José Fonseca [Tue, 24 Jun 2008 05:18:07 +0000 (14:18 +0900)]
mesa: Use standard integer types.
Especially get rid of the non-portable long long.
José Fonseca [Tue, 24 Jun 2008 05:02:24 +0000 (14:02 +0900)]
mesa: Replace deprecated __MSC__ macro.
José Fonseca [Tue, 24 Jun 2008 05:00:10 +0000 (14:00 +0900)]
dri/intel: Use standard integer types.
José Fonseca [Tue, 24 Jun 2008 04:56:41 +0000 (13:56 +0900)]
gallium: Drop deprecated __MSC__ macro.
José Fonseca [Tue, 24 Jun 2008 04:55:38 +0000 (13:55 +0900)]
egl: Use standard integer types.
José Fonseca [Tue, 24 Jun 2008 04:51:52 +0000 (13:51 +0900)]
mesa/dri: User standard integer types.
José Fonseca [Tue, 24 Jun 2008 04:12:41 +0000 (13:12 +0900)]
mesa: More signed/unsigned float/integer fixes.
José Fonseca [Tue, 24 Jun 2008 04:00:03 +0000 (13:00 +0900)]
mesa: WGL is not part of the WinCE API.
Although it would be interesting having the GDI winsys running on WinCE
several Windows GDI API functions and data structures are missing from
WinCE headers, making this far from a trivial endeavor.
José Fonseca [Tue, 24 Jun 2008 02:40:25 +0000 (11:40 +0900)]
gdi: Update for surface_alloc_storage changes.
José Fonseca [Tue, 24 Jun 2008 02:34:46 +0000 (11:34 +0900)]
mesa: Use appropriate unsigned/signed, float/integer types.
José Fonseca [Tue, 24 Jun 2008 02:33:03 +0000 (11:33 +0900)]
mesa: Use _mesa_bsearch.
José Fonseca [Tue, 24 Jun 2008 01:58:55 +0000 (10:58 +0900)]
mesa: bsearch implementation for WinCE.
José Fonseca [Tue, 24 Jun 2008 01:56:36 +0000 (10:56 +0900)]
mesa: Replace abort by asserts.
José Fonseca [Tue, 24 Jun 2008 01:18:08 +0000 (10:18 +0900)]
mesa: Move variable declarations to the scope top.
José Fonseca [Tue, 24 Jun 2008 01:17:32 +0000 (10:17 +0900)]
mesa: Don't include sys/types.h on WinCE.
We probably shouldn't be including sys/types.h at all, but let's leave that
for another time.
Brian Paul [Mon, 23 Jun 2008 23:13:14 +0000 (17:13 -0600)]
gallium: added support for fixed-point formats, drawing
Jonathan White [Mon, 23 Jun 2008 22:24:58 +0000 (16:24 -0600)]
gallium: code for PIPE_SUBSYSTEM_WINDOWS_USER
José Fonseca [Mon, 23 Jun 2008 17:37:21 +0000 (02:37 +0900)]
mesa: ASSERT macro is already defined by WinCE headers.
Even when just the standard headers are used....
José Fonseca [Mon, 23 Jun 2008 17:35:50 +0000 (02:35 +0900)]
mesa: No getenv on WinCE.
José Fonseca [Mon, 23 Jun 2008 16:26:22 +0000 (01:26 +0900)]
gallium: Use the more portable PIPE_ARCH_* PIPE_CC_* macros instead of ad-hoc ones.
José Fonseca [Mon, 23 Jun 2008 16:25:20 +0000 (01:25 +0900)]
gallium: WinCE does not have cosf, sinf, etc.
Brian Paul [Mon, 23 Jun 2008 17:27:44 +0000 (11:27 -0600)]
gallium: in softpipe_get_tex_surface() use the pitch specified in the softpipe_texture object.
Fixes a pitch/width mix-up.
Jakob Bornecrantz [Mon, 23 Jun 2008 15:57:45 +0000 (17:57 +0200)]
i915: Add render and texture support for tiled texture and buffers
This is step towards tiled textures and buffer support for
i915. But the tiled attribute is never set.
Brian Paul [Mon, 23 Jun 2008 15:50:09 +0000 (09:50 -0600)]
gallium: fix-up inverted do_copy_texsubimage()
The logic/arithmetic for inverting the src image is a bit simpler now.
Brian Paul [Mon, 23 Jun 2008 15:47:12 +0000 (09:47 -0600)]
gallium: fix Y-inverted copies
Don't require the caller to pass a non-intuitive negative src_y coord anymore
when doing a src-inverted copy.
Brian Paul [Mon, 23 Jun 2008 15:07:56 +0000 (09:07 -0600)]
gallium: remove dead/prototype code
Brian Paul [Mon, 23 Jun 2008 14:54:16 +0000 (08:54 -0600)]
gallium: change surface_copy()'s do_flip to boolean
Brian Paul [Mon, 23 Jun 2008 14:51:00 +0000 (08:51 -0600)]
gallium: fix bad srcy coord if do_flip
Brian Paul [Mon, 23 Jun 2008 14:44:30 +0000 (08:44 -0600)]
gallium: fix bad srcy coord if do_flip
Brian Paul [Mon, 23 Jun 2008 14:35:41 +0000 (08:35 -0600)]
gallium: added some assertions
Brian Paul [Mon, 23 Jun 2008 14:14:14 +0000 (08:14 -0600)]
Don't make libmesa.a or libglapi.a depend on asm_subdirs
Since the asm_subdirs target does not actually create a file, make will
always consider that it needs to be rebuilt. If libmesa.a and libglapi.a
have asm_subdirs as a prerequisite, then they will always need to be
rebuilt, too. The correct order will be preserved by the default target,
though.
This should fix #16358.
Conflicts:
src/mesa/Makefile
cherry-picked from master
Dan Nicholson [Mon, 23 Jun 2008 03:19:35 +0000 (20:19 -0700)]
Create $(TOP)/$(LIB_DIR) for install, too
If `make install' is run without running `make' first, the $(LIB_DIR)
will not be created. This also changes the mkdir a little bit so that it
isn't run if necessary and added `-p' so that it is immune to races.
Dan Nicholson [Mon, 23 Jun 2008 03:29:45 +0000 (20:29 -0700)]
Ensure all objects are built when installing DRI
Jakob Bornecrantz [Mon, 23 Jun 2008 14:01:41 +0000 (16:01 +0200)]
util: Blit can now copy from texture to surface
Jakob Bornecrantz [Mon, 23 Jun 2008 13:54:25 +0000 (15:54 +0200)]
gallium: Add accessor functions to get textures from a st_framebuffer
José Fonseca [Mon, 23 Jun 2008 03:49:45 +0000 (12:49 +0900)]
scons: Update to target WinCE 6.0.
Jakob Bornecrantz [Mon, 23 Jun 2008 10:31:46 +0000 (12:31 +0200)]
gallium: Fix warning in u_draw_quad.h
Jakob Bornecrantz [Thu, 19 Jun 2008 18:28:20 +0000 (20:28 +0200)]
i915: Removed level_offset from i915_texture
All offsets are now on image_offset.
Keith Whitwell [Sun, 22 Jun 2008 12:14:29 +0000 (13:14 +0100)]
draw: fix non-i386 builds
Brian [Sat, 21 Jun 2008 00:29:23 +0000 (18:29 -0600)]
gallium: s/feadback/feedback/, duh
Brian Paul [Fri, 20 Jun 2008 23:28:42 +0000 (17:28 -0600)]
gallium: fix invalid call to draw_set_mapped_constant_buffer()
We were indexing sp_constants[i] outside the loop so i was 2.
Replace i with PIPE_SHADER_VERTEX.
Also, replace magic '2' with PIPE_SHADER_TYPES in a few places.
Brian Paul [Fri, 20 Jun 2008 21:58:19 +0000 (15:58 -0600)]
gallium: fix some surface usage bugs
When a surface is created with GPU_WRITE that really means "GPU render"
and that can involve reads (blending). Set surface usage to
PIPE_BUFFER_USAGE_CPU_READ + WRITE. Fixes progs/demos/lodbias demo.
Also, mark texture as 'modified' when mapped for writing so that the tile
cache can know when to freshen a cached tile. Fixes glTexSubImage2D().