Age | Commit message (Collapse) | Author |
|
Mention that EGL_DRIVERS_PATH should be specified for uninstalled build.
Update TODOs.
|
|
This increases the chance that GLSL programs will actually work.
Note that continues and returns are not yet lowered, so linking
will just fail if not supported.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
This allows us to specify different options, especially useful for chips
without unified shaders.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
Changes in v2:
- No longer adds tessellation enums
|
|
|
|
The previous thing taking multiple instructions ended up being handled
at the IR level, as we suggested would be the common result. Pick a
new one.
|
|
Now that we suppress BadDrawable from DRI2DestroyDrawable, this doesn't
matter, but we would get that error before when destroying pbuffers.
|
|
|
|
Otherwise it gets used uninitialized.
|
|
Otherwise builtin_profiles contains dangling pointers the next time
_mesa_read_profile is called. I suspect this may fix bugzilla #29847,
but I was never able to reproduce it.
|
|
The enum values were chosen to have sequential values for a reason.
Use that to compact and simplify the code.
|
|
GL_EXT_texture_env_combine has slightly more restrictive limits on the
valid sources for some operands. This wasn't caught before because
almost every driver in Mesa that supports the EXT version also
supports the ARB version.
Inspired by a patch posted the the mesa-dev mailing list by Andrew
Randrianasulu.
|
|
Since we now actually destroy GLX drawables, we get into situations where
we get events for drawables that no longer exist. Just ignore the
event in that case.
|
|
|
|
These need abs, and we need more tests.
|
|
|
|
|
|
|
|
|
|
ir_binop_dot is only defined for vector types. Use ir_binop_mul.
|
|
The code being generated was just stupid, considering that:
- normalize(x) = 1.0
- length(x) = x
- distance(x, y) = x - y
|
|
Fix an major regression in dc754586. Too bad that change was
obviously never tested.
|
|
Doesn't work for pixmaps, was looking up the GLX XID and was never thread
safe. Instead, just destroy the client side structures when the
drawable is no long current for a context.
|
|
Otherwise, when we switch to an indirect glx context and then back, it looks
like we're still current.
https://bugs.freedesktop.org/show_bug.cgi?id=29977#c7
Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
|
|
GLSL ES mode is enabled when --glsl-es is passed to glsl_compiler.
|
|
Create a dummy context in the standalone compiler and pass it to
_mesa_glsl_parse_state.
|
|
libmesagallium.a that this state tracker will be linked to expects
OpenGL's _glapi_table. That is, it expects libGL.so instead of
libGLESv1_CM.so or libGLESv2.so. As there is no clean way to know the
shared library the app links to, use the api as a simple check. It
might be as well to simply remove this function call though.
|
|
|
|
Make st/dri screens capable of creating OpenGL ES and
OpenGL ES2 contexts.
TODO: Figure out the "get_current" problem with multiple
st_api's for real.
(s/API_OPENGLES1/API_OPENGLES/ by Chia-I Wu)
|
|
If the caller requests a GLES context, don't silently create
a desktop GL context in its place.
|
|
this is ported from r600c mostly, bank swizzling is real messy and I don't think
I got enough sleep last night to fully understand it.
|
|
|
|
This allows them to be passed as out/inout parameters, but still
prevents them from being used as the target of an assignment. This is
per section 5.8 of the GLSL ES 1.00 specification.
|
|
The rules are explicitly different from desktop GLSL.
|
|
This effectively reverts b6f15869b324ae64a00d0fe46fa3c8c62c1edb6c.
In desktop GLSL, defining a function with the same name as a built-in
hides that built-in function completely, so there would never be
built-in and user function signatures in the same ir_function.
However, in GLSL ES, overloading built-ins is allowed, and does not
hide the built-in signatures - so we're back to needing this.
|
|
|
|
|
|
Everything but 1.10 supports this, so just change the check to ==.
|
|
Otherwise, ES2's BindFramebuffer entrypoint hits this assertion:
main/fbobject.c:1323: _mesa_BindFramebufferEXT: Assertion
`ctx->Extensions.EXT_framebuffer_blit' failed.
|
|
Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
|
|
Fixes an assert (min_version >= 110) which was no longer correct, and
also prohibits linking ES2 shaders with non-ES2 shaders. I'm not
positive this is correct, but the specification doesn't seem to say.
|
|
|
|
|
|
|
|
|
|
Also define it if #version 100 is encountered.
|
|
|
|
This should make it easier to change the default version based on the
API (say, version 1.00 for OpenGL ES).
Also, synchronize the symbol table's version with the parse state's
version just before doing AST-to-HIR. This way, it will be set when
it matters, but the main initialization code doesn't have to care about
the symbol table.
|
|
Bug #30040.
|
|
This should only occur if glCompileShader is called without a prior call
to glShaderSource. An empty source program should be the empty string.
|