Commit graph

37181 commits

Author SHA1 Message Date
Zack Rusin
ca88683459 draw: make sure softpipe doesn't crash with vertex tex sampling
softpipe doesn't implement the draw's llvm tex sampling interface
so make sure draw can handle the cases where the driver doesn't
implement the interface
2010-07-06 13:29:04 -04:00
Zack Rusin
01eebfe1b6 draw: implement vertex texture sampling using llvm 2010-07-06 13:29:04 -04:00
Tom Stellard
ce929d8210 r300/compiler: Implement KILP opcode.
Signed-off-by: Marek Olšák <maraeo@gmail.com>
2010-07-06 18:45:32 +02:00
José Fonseca
88b6abfba5 gallivm: Use SSE4.1's BLENDV instructions for lp_build_select(). 2010-07-06 11:53:15 +01:00
José Fonseca
b3d4e5bd26 gallivm: Fix 8bit comparisons. 2010-07-06 11:53:15 +01:00
Alan Hourihane
5a723afabb llvmpipe: ensure all bins are reset avoids memory corruption. 2010-07-06 11:42:18 +01:00
Chia-I Wu
32a9b2799e mesa: Always initialize transform feedback state.
Assert ctx->Driver.NewTransformFeedback if the feature is enabled;  Use
the default callbacks otherwise.  The rest of core mesa expects the
state to be initialized.
2010-07-06 17:03:32 +08:00
Chia-I Wu
f2aa361f3b egl: Rework driver loading.
Driver loading is now splitted into two stages.  In the first stage, an
_EGLModule is created for each driver: user driver, default drivers, and
all files in the search directories that start with "egl_".  Modules are
not loaded at this stage.

In the second stage, each module is loaded to initialize a display.  The
process stops at the first module that can initialize the display.

If eglGetProcAddress is called before eglInitialize, the same code path
will be taken to find the first module that supports
EGL_DEFAULT_DISPLAY.  Because we do not want to initialize the display,
drv->Probe is used instead in this case.
2010-07-06 16:16:39 +08:00
Chia-I Wu
cf588ab3f1 st/egl: Add support for !GLX_DIRECT_RENDERING.
st/egl uses GLX code for DRI2 support.  It should honor
GLX_DIRECT_RENDERING.

Also updates configure.ac to define GLX_DIRECT_RENDERING for st/egl.
2010-07-06 15:27:09 +08:00
Brian Paul
abd5627a6a mesa: initial support for unnormalized integer texture formats
As defined by GL_EXT_texture_integer.
2010-07-05 20:14:39 -06:00
Corbin Simpson
e54164b4e3 auxiliary/util: Add SM3 meta-cap list. 2010-07-05 14:59:12 -07:00
Roland Scheidegger
3ed0a099c7 llvmpipe: wait for queries being finished when asked for it or before deletion
This fixes bug #28757, though does not yet address the issue that fences aren't
always emitted.
2010-07-05 17:17:50 +02:00
Vinson Lee
a3b0aaf26f i915g: Remove unnecessary header. 2010-07-04 11:34:15 -07:00
Jakob Bornecrantz
2d818ed0f8 i915g: Add flag to not send commands to hw 2010-07-04 13:32:02 +01:00
Jakob Bornecrantz
34bd0569d3 i915g: If the kernel reject the batchbuffer print it then assert 2010-07-04 13:32:02 +01:00
Jakob Bornecrantz
50f17a001f i915g: Minor cleanups 2010-07-04 13:32:02 +01:00
Jakob Bornecrantz
57fc2ad7a1 i915g: Make batchbuffer flush function not be inline 2010-07-04 13:32:02 +01:00
Jakob Bornecrantz
ded664b1ac i915g: Rename texture state to map state 2010-07-04 13:32:01 +01:00
Jakob Bornecrantz
8b122bdf6c i915g: Move fragment state to its own file 2010-07-04 13:32:01 +01:00
Jakob Bornecrantz
d64561472b i915g: Move static state to its own file 2010-07-04 13:32:01 +01:00
Jakob Bornecrantz
7174038e29 i915g: Don't dirty dynamic state if it hasn't changed 2010-07-04 13:32:01 +01:00
Jakob Bornecrantz
22d4d5fc3f i915g: Don't flush after blit 2010-07-04 13:32:01 +01:00
Jakob Bornecrantz
62bcf2e6ad i915g: Don't flush empty batchbuffers 2010-07-04 13:32:01 +01:00
Jakob Bornecrantz
ed5ce78b81 gallium: Make trivial examples use target helpers 2010-07-04 13:31:55 +01:00
Jakob Bornecrantz
abbb96b2fe gallium: Fix compilation of trivial quad-tex 2010-07-04 13:09:13 +01:00
Vinson Lee
1f0bcce6be st/egl: Remove unnecessary headers. 2010-07-03 19:28:31 -07:00
Chia-I Wu
b365b150a1 docs: Update EGL doc.
Updated for the reorganization of st/egl targets.
2010-07-03 17:20:52 +08:00
Chia-I Wu
40ef298641 mesa: Fix OpenGL ES-only builds.
Check FEATURE_GL in _mesa_init_shader_dispatch and
_mesa_init_shader_uniform_dispatch.  OpenGL ES can not and does not use
_mesa_init_<...>_dispatch.  This is supposed to be temporary.  Ideally,
a more flexible way for initializing dispatch tables should be
developed.
2010-07-03 16:48:36 +08:00
nobled
c43ab4fe1f egl: Always use EGLAPIENTRY in api function prototypes
Fixes the build on Windows.
2010-07-03 16:36:43 +08:00
Vinson Lee
fbc4b88e76 gallivm: Remove unnecessary headers. 2010-07-03 01:04:50 -07:00
Marek Olšák
0e6d7ce017 r300g: fix warnings 2010-07-03 04:32:41 +02:00
Tom Stellard
7da9e1e61b r300/compiler: Fix loop unrolling 2010-07-03 04:32:41 +02:00
Tom Stellard
f381c52081 r300/compiler: Use hardware flow control instructions for loops on r500. 2010-07-03 04:32:31 +02:00
Tom Stellard
3c3b7e02eb r300g: Fix typo in r300_reg.h 2010-07-03 04:27:09 +02:00
Tom Stellard
0dbdcb4321 r300/compiler: Don't continue copy propagation inside loops. 2010-07-03 04:27:09 +02:00
Tom Stellard
7f57530943 r300/compiler: Print debug info for flow control instructions. 2010-07-03 04:27:09 +02:00
Tom Stellard
82d0602c1f r300/compiler: Enable hardware IF statements for r500 cards. 2010-07-03 04:27:09 +02:00
Tom Stellard
1732751242 r300/compiler: In the peephole optimizer, ELSE should mark the end of a
block.
2010-07-03 04:27:09 +02:00
Tom Stellard
29a1d6aee7 r300/compiler: Correctly calculate the max number of iterations for loops. 2010-07-03 04:27:09 +02:00
Tom Stellard
697d666d78 r300/compiler: Handle loops in deadcode analysis.
This also allows us to split the loop emulation into two phases.  A
tranformation phase which either unrolls loops or prepares them to be
emulated, and the emulation phase which unrolls remaining loops until the
instruction limit is reached.  The second phase is completed after the
deadcode analysis in order to get a more accurate count of the number of
instructions in the body of loops.
2010-07-03 04:27:09 +02:00
Kenneth Graunke
83035574db Refresh autogenerated file builtin_function.cpp. 2010-07-02 18:20:19 -07:00
Kenneth Graunke
7e908a6a27 glcpp: Add #error support. 2010-07-02 18:03:58 -07:00
Kenneth Graunke
2070f9f5be glsl2: Fix for dead strings being stored in the symbol table. 2010-07-02 18:03:58 -07:00
Kenneth Graunke
e2a358348b ir_to_mesa: Fix uninitalized value. 2010-07-02 18:03:58 -07:00
Kenneth Graunke
ddc3aa0783 glsl2/builtins: Use vector ops in the 130 version of "sign." 2010-07-02 18:03:58 -07:00
Kenneth Graunke
9a7ac272fb glsl2/builtins: Use vector ops in "smoothstep." 2010-07-02 18:03:58 -07:00
Brian Paul
91c37599f6 osmesa: remove old renderbuffer before adding new
Fixes fd.o bug 10966 when OSMesaMakeCurrent() was called twice.

NOTE: This is a candidate for the 7.8 branch.
2010-07-02 18:22:53 -06:00
Brian Paul
7cc58c1992 mesa: updated instruction comments 2010-07-02 18:22:53 -06:00
Eric Anholt
b0ac07e3de ir_to_mesa: Fix up implementation of ir_unop_exp.
OPCODE_EXP is not to ir_unop_exp what OPCODE_EX2 is to ir_unop_exp2.
It's the weird VP approximation helper opcode.  Just implement it with
OPCODE_POW instead.

Fixes glsl-fs-exp.
2010-07-02 17:06:32 -07:00
Eric Anholt
4e7d5d0e74 i965: Add support for the DP2 opcode, which we use for dot(vec2, vec2).
The original glsl compiler would generate a.x * b.x + a.y * b.y, which
we would do mul+mul+add for instead of this mul+mac.

Fixes glsl-fs-dot-vec2.
2010-07-02 17:06:23 -07:00