Commit Graph

37938 Commits

Author SHA1 Message Date
Zhenyu Wang ffb5095d56 i965: Mention the mlen and rlen for URB reads. 2010-08-20 16:17:39 -07:00
Zhenyu Wang da1502494b i965: Sandybridge doesn't have Compr4 mode, since it's not needed any more. 2010-08-20 16:17:39 -07:00
Zhenyu Wang 0e2d0cc577 i965: Adjust disasm of subreg numbers to be in units of the register type.
This makes reading the code easier when matching up to the specs,
which also use this format.
2010-08-20 16:17:39 -07:00
Eric Anholt b7004350fa i965: Fix DP write channel ordering on Sandybridge.
The SIMD16 message no longer has the goofy interleaved format that
made Compr4 compression necessary before.
2010-08-20 16:17:39 -07:00
Luca Barbieri 132b9439e2 os_stream: fix bugs in allocation path 2010-08-21 00:51:29 +02:00
Luca Barbieri 9960200d5e p_compiler: add replacement va_copy
This might technically not always be correct, because va_copy might
be a function, or a system might not have va_copy, and not work with
assignment.

Hopefully this is never the case.
Without configure tests, it doesn't seem possible to do better.
2010-08-21 00:51:29 +02:00
Kenneth Graunke 7f80041efa Delete more vestiges of the old shader compiler. 2010-08-20 13:06:02 -07:00
Kenneth Graunke d6cc7191da glsl: Remove bogus "ambient" field from vec4 gl_TextureEnvColor. 2010-08-20 13:01:12 -07:00
Luca Barbieri c3e3793c32 glsl: add missing ambient field to gl_LightModel
Again, this is a one-element struct that was incorrectly missing the
field.
2010-08-20 13:01:09 -07:00
Luca Barbieri fc76d72763 glsl: don't crash if a field is specified for a non-struct uniform
This was triggered by the previous bug, but is a separate problem
in the general sense.
2010-08-20 13:01:07 -07:00
Luca Barbieri c108a7927d glsl: add missing sceneColor field to gl_{Front, Back}LightModelProduct
According to both GLSL 1.20 and 4.0, these are a struct with one field
called "sceneColor".

Fixes a crash on loading in FlightGear.
2010-08-20 13:01:04 -07:00
Eric Anholt 27e6552a8f intel: Don't try to do work for BufferSubData with a size of 0.
If we hit the linear blit path, we'd come up with a pitch of 0, then
divide by zero.

Fixes vbo-subdata-zero, made for bug #28931 (warsow).
2010-08-20 12:36:34 -07:00
Nick Bowler 5482eaba6e mesa: Fix GetUniformLocation while compiling display lists.
This function was apparently missing from the display list dispatch
table, causing the generic no-op function to be called instead.  To make
matters worse, the no-op function is indistinguishable from a successful
call to GetUniformLocation.  GL specifies that GetUniformLocation is
executed immediately when compiling display lists.

Fixes fdo bug 29622.

Signed-off-by: Nick Bowler <nbowler@draconx.ca>
2010-08-20 10:55:50 -07:00
Eric Anholt 284ce20901 Remove remnants of the old glsl compiler. 2010-08-20 10:55:42 -07:00
Jerome Glisse a4b10a5614 r600g: add POW instruction
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-20 18:54:26 +02:00
Jerome Glisse 921c987c6f r600g: cleanup definition, fix segfault when no valid pixel shader
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-20 18:54:26 +02:00
Michal Krol a43a2f0662 util: Fix build for C++ compilers. 2010-08-20 18:51:22 +02:00
Luca Barbieri c806a40277 gallium: hook up reference count debugging code
This commit adds the ability to produce a log file containing all
reference count changes, and object creation/destruction, on Gallium
objects.

The data allows to answer these crucial questions:
1. This app is exhausting all my memory due to a resource leak: where
   is the bug?
2. Which resources is this app using at a given moment? Which parts of
   the code created them?
3. What kinds of resources does this app use?
4. How fast does this app create and destroy resources? Which parts of
   the code create resources fast?

The output is compatible with the one produced by the similar facility
in Mozilla Firefox, allowing to use Mozilla's tools to analyze the data.

To get the log file:
export GALLIUM_REFCNT_LOG=<file>

To get function names and source lines in the log file:
tools/addr2line.sh <file>

To process the log file, see:
http://www.mozilla.org/performance/refcnt-balancer.html
2010-08-20 18:18:28 +02:00
Luca Barbieri 2ff13fe89e auxiliary: add reference count debugging code 2010-08-20 18:18:28 +02:00
Luca Barbieri b1fa352db8 os_stream: add printf facility 2010-08-20 18:18:28 +02:00
Luca Barbieri 40eef4c20c u_debug_symbol: add symbol name caching
Without this, any form of logging that dumps stack traces continuously
will spend a lot of time resolving symbol names.
2010-08-20 18:18:28 +02:00
Luca Barbieri b3e57fc868 u_debug_symbol: add support for getting symbol names from glibc 2010-08-20 18:18:28 +02:00
Luca Barbieri 64c4f9c566 u_debug_symbol: support getting a string without output 2010-08-20 18:18:28 +02:00
Luca Barbieri d46f91af68 auxiliary: add functions to describe gallium objects 2010-08-20 18:18:28 +02:00
Dave Airlie 63d010115c r600g: add occlusion query support
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-20 16:43:44 +02:00
Luca Barbieri 3aaec4750d u_staging: improve interface 2010-08-20 16:38:32 +02:00
Luca Barbieri c843a60e63 gallium/docs: improve documentation for resources 2010-08-20 15:24:36 +02:00
Chia-I Wu cfc0081740 mesa: Add missing ES sources to SConscript.
These sources compile to nothing when FEATURE_ES is not defined and thus
were overlooked.  Note that api_exec_es[12].c are still missing on the
list.  They should be added when they can be generated on the fly.
2010-08-20 19:26:43 +08:00
Chia-I Wu ae2ace64f4 mesa: Decorate functions with GL_APIENTRY in es_generator.py.
Note that GLES headers use GL_APIENTRY, not GLAPIENTRY.
2010-08-20 19:26:18 +08:00
Chia-I Wu 8043bf555e mesa: Include compiler.h for ASSERT.
mfeatures.h defines ASSERT_NO_FEATURE to ASSERT, which is defined in
compiler.h.  Header files using the macro should include compiler.h.
2010-08-20 19:22:51 +08:00
Chia-I Wu 5004f823ad targets/egl-gdi: Implement guess_gl_api.
It is needed to support calling eglGetProcAddress before eglInitialize.
2010-08-20 19:22:51 +08:00
Chia-I Wu 5eb33596a0 egl: Fix context API check and be verbose.
The API of the context was not checked against EGL_RENDERABLE_TYPE when there
was no attribute list.  Move the check to _eglInitContext, and be verbose about
common mistakes (EGL_RENDERABLE_TYPE not set, EGL_CONTEXT_CLIENT_VERSION not
set, or eglBindAPI not called).
2010-08-20 19:22:51 +08:00
Chia-I Wu ce2cae4130 egl: Add egl.def for win32 build.
Without the .def file, function names are decorated and cannot be
queried by GetProcAddress easily.
2010-08-20 19:22:50 +08:00
Chia-I Wu f508c0c097 egl: Allow core functions to be queried.
When _EGL_GET_CORE_ADDRESSES is defined, eglGetProcAddress can be used to query
core functions.  This is non-standard, but some apps expect it.
2010-08-20 19:22:35 +08:00
Keith Whitwell 4df17f9dfe st/mesa: fix code/declaration mixing 2010-08-20 11:52:01 +01:00
Luca Barbieri 7344e6d9b5 galahad: remove incorrect comment just added 2010-08-20 12:07:14 +02:00
Luca Barbieri 09bf09cf92 nv50: use NV50TIC_0_2_TARGET_RECT 2010-08-20 12:04:10 +02:00
Luca Barbieri ccd0864357 galahad: check resource_create template 2010-08-20 12:04:10 +02:00
Luca Barbieri 7f15dca6d9 mesa/st: use PIPE_TEXTURE_RECT for GL_TEXTURE_RECTANGLE 2010-08-20 12:04:09 +02:00
Luca Barbieri 96a82cc314 winsys/sw: use PIPE_TEXTURE_RECT if appropriate 2010-08-20 12:04:08 +02:00
Luca Barbieri d34f6e9db1 st/glx: use PIPE_TEXTURE_RECT if appropriate 2010-08-20 12:04:07 +02:00
Luca Barbieri 4a5acc0ec7 st/dri: use PIPE_TEXTURE_RECT if appropriate 2010-08-20 12:04:06 +02:00
Luca Barbieri d4ec85e624 auxiliary: support using PIPE_TEXTURE_RECT internally
Currently Gallium internals always use PIPE_TEXTURE_2D and normalized
coordinates to access textures.

However, PIPE_TEXTURE_2D is not always supported for NPOT textures,
and PIPE_TEXTURE_RECT requires unnormalized coordinates.

Hence, this change adds support for both kinds of normalization.
2010-08-20 12:04:05 +02:00
Luca Barbieri 3070e0ea41 mesa/st: support using PIPE_TEXTURE_RECT internally
Currently Gallium internals always use PIPE_TEXTURE_2D and normalized
coordinates to access textures.

However, PIPE_TEXTURE_2D is not always supported for NPOT textures,
and PIPE_TEXTURE_RECT requires unnormalized coordinates.

Hence, this change adds support for both kinds of normalization.
2010-08-20 12:04:03 +02:00
Luca Barbieri 4a9bfb24eb u_staging: use PIPE_TEXTURE_RECT 2010-08-20 12:04:02 +02:00
Luca Barbieri cbe3672279 u_blitter: use TGSI_TEXTURE_RECT
This seems to make sense, although I suspect the semantics of
TGSI_TEXTURE_RECT need to be closely reviewed.
2010-08-20 12:04:01 +02:00
Luca Barbieri ae0ef6f69f gallium: make all checks for PIPE_TEXTURE_2D check for PIPE_TEXTURE_RECT too
Searched for them with:
git grep -E '[!=]=.*PIPE_TEXTURE_2D|PIPE_TEXTURE_2D.*[!=]=|case.*PIPE_TEXTURE_2D'

Behavior hasn't been changed.
2010-08-20 12:04:00 +02:00
Luca Barbieri 72b3e3fee3 gallium: add PIPE_TEXTURE_RECT target
This allows to properly support OpenGL rectangle textures in a well
defined way, especially on drivers that don't expose
PIPE_CAP_NPOT_TEXTURES.
2010-08-20 12:03:59 +02:00
Kenneth Graunke 9b3362932d i965: Fix compile warnings on 64-bit Linux.
format ‘%d’ expects type ‘int’, but argument 2 has type ‘long int’
2010-08-20 02:46:05 -07:00
Kenneth Graunke edd180f032 ast_to_hir: Reject function names that start with "gl_".
Fixes piglit test redeclaration-03.vert.
2010-08-20 02:46:05 -07:00