Commit graph

15209 commits

Author SHA1 Message Date
José Fonseca
d16fcd07f8 pipebuffer: Debug buffer manager to detect buffer under- and overflows.
It should detect both cpu and gpu buffer overflows.
2008-07-02 12:29:07 +09:00
José Fonseca
ea4ca10b1b pipebuffer: Verify usage flag consistency. Minor cleanups. 2008-07-02 12:29:07 +09:00
Brian Paul
66b48202c2 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
2008-07-01 18:40:23 -06:00
Brian Paul
eeefe175de mesa: move some functions
cherry-picked from master
2008-07-01 18:39:46 -06:00
Brian Paul
81a0acca31 mesa: make _slang_swizzle_swizzle() non-private
cherry-picked from master
2008-07-01 18:39:22 -06:00
Brian Paul
44c99ad236 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
2008-07-01 11:48:57 -06:00
Brian Paul
7d4f01413f mesa: add/fix some IrInfo entries for debugging purposes
cherry-picked from master
2008-07-01 11:48:27 -06:00
Jakob Bornecrantz
e99ce4af8a i915: Last reference to surface -> pitch 2008-07-01 15:52:37 +02:00
José Fonseca
b3da2a9524 gallium: Use the inline keyword on C++. 2008-07-01 22:04:58 +09:00
José Fonseca
846f87d826 scons: Output mapfile on windows ddk profile builds. 2008-07-01 22:04:01 +09:00
José Fonseca
810888f656 gles: Don't define GLAPIENTRY here. 2008-06-30 12:49:32 +09:00
Brian Paul
9d94d133b0 mesa: added null ptr checks 2008-06-28 16:47:39 -06:00
Brian Paul
2242769a13 s/GL_INVALID_VALUE/GL_INVALID_OPERATION/ in _mesa_get_uniformfv() 2008-06-28 16:47:22 -06:00
Brian Paul
a1ec6efce0 mesa: check FEATURE_point_size_array 2008-06-28 16:15:03 -06:00
Brian Paul
d4b100a6a1 egl: set config's EGL_CONFORMANT, EGL_RENDERABLE_TYPE, EGL_SURFACE_TYPE attributes 2008-06-28 16:04:01 -06:00
Brian Paul
8f91a83669 egl: fix default value of EGL_SURFACE_TYPE, added some sanity check assertions 2008-06-28 16:03:28 -06:00
José Fonseca
0f9a1e43bc egl: WinCE doesn't have sys/types.h 2008-06-28 20:40:44 +09:00
Zack Rusin
a7499b7fc7 egl: helps if the stride is right 2008-06-27 16:47:22 -04:00
Zack Rusin
838b0d6e48 eh, we need a buildbot... fix the compilation 2008-06-27 15:56:09 -04:00
Roland Scheidegger
429a08384c gallium: handle msaa 2008-06-27 16:10:16 +02:00
Robert Ellison
a1fb565ea7 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.)
2008-06-27 07:17:02 -06:00
Jonathan White
b028b0cc53 egl: Windows updates to the platform.h files 2008-06-27 07:13:58 -06:00
Jakob Bornecrantz
5b9d823545 i915: Fix the last of the stride/pitch changes 2008-06-27 14:33:02 +02:00
José Fonseca
fb95b603ef mesa: Replace void * arithmetic. 2008-06-27 20:56:49 +09:00
José Fonseca
4f45dbc6aa gdi: Update for cpp removal. 2008-06-27 20:56:29 +09:00
José Fonseca
891469a3a5 cell: Update for cpp removal.
Not tested -- just mymic the softpipe changes.
2008-06-27 20:10:04 +09:00
José Fonseca
4ddd659679 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.
2008-06-27 19:37:56 +09:00
José Fonseca
05cfb4c4b8 scons: Get x86-64<->x86 cross build of assembly files right. 2008-06-27 13:41:23 +09:00
José Fonseca
6106db4c5d scons: Fix i965/xlib build. 2008-06-27 13:01:37 +09:00
José Fonseca
fb4361a93d scons: Fix typo. 2008-06-27 12:35:18 +09:00
José Fonseca
cb09d1ef60 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
2008-06-27 12:34:57 +09:00
José Fonseca
38d779a3e6 gallium: Describe pixel block.
Chars-per-pixel paradigm is not enough to represent compressed and yuv
pixel formats.
2008-06-26 23:39:13 +09:00
Brian Paul
d378f7b3df mesa: point size arrays 2008-06-25 08:45:14 -06:00
Brian Paul
0561a293b6 gallium: remove some old dispatch code 2008-06-24 08:47:15 -06:00
Brian Paul
2b69233510 gallium: remove bad assertion 2008-06-24 08:45:59 -06:00
Jakob Bornecrantz
62fd280c52 gallium: Fix whole source being used in u_blit 2008-06-24 16:14:46 +02:00
José Fonseca
fd6676c249 Fix CRLF line endings. 2008-06-24 22:26:19 +09:00
José Fonseca
67262c82a1 Allow CRLF automatic conversion on MSVC project files.
MSVC doesn't really care, and it is frequently causing merge conflicts.
2008-06-24 22:25:52 +09:00
Jakob Bornecrantz
e95697758e i915: Create a texture and surface for shared frontbuffer 2008-06-24 14:42:12 +02:00
Jakob Bornecrantz
19dad109bb i915: Added texture_blanket function 2008-06-24 14:33:28 +02:00
Jakob Bornecrantz
2d11411b19 i915: Moved screen creation to intel_be_device 2008-06-24 14:33:18 +02:00
Jakob Bornecrantz
e8af160b24 gallium: Fix warning in u_blit.h 2008-06-24 14:33:07 +02:00
Jakob Bornecrantz
72edcd1711 egl: Stdint was missing from eglconfigutil.h 2008-06-24 14:32:53 +02:00
José Fonseca
8c90148cb9 mesa: Fix Windows GDI winsys build. 2008-06-24 20:44:47 +09:00
José Fonseca
9dfa6063be gallium: Avoid double arithmetic. 2008-06-24 14:22:09 +09:00
José Fonseca
a148025d94 mesa: Use standard integer types.
Especially get rid of the non-portable long long.
2008-06-24 14:18:07 +09:00
José Fonseca
b6f053739f mesa: Replace deprecated __MSC__ macro. 2008-06-24 14:02:24 +09:00
José Fonseca
4802a687a7 dri/intel: Use standard integer types. 2008-06-24 14:00:10 +09:00
José Fonseca
e8b52b3f56 gallium: Drop deprecated __MSC__ macro. 2008-06-24 13:56:41 +09:00
José Fonseca
0d94767430 egl: Use standard integer types. 2008-06-24 13:55:38 +09:00