Age | Commit message (Collapse) | Author |
|
The program should be disassembled after it's uploaded
|
|
Fixes piglit test glsl-fs-discard-03.
NOTE: This is a candidate for the 7.9 branch.
|
|
|
|
With recent changes to the GLSL compiler, these opcode should never be
seen in these drivers.
|
|
Fixes glsl-fs-sign and many of the tests of trig builtins.
|
|
Fixes glsl-unused-varying and many others, since we produce an output
reg read any time gl_FragColor is written inside an if statement.
|
|
Fixes glsl-fs-dot-vec2.
|
|
|
|
|
|
|
|
Fixes hang with "gst-launch-0.10 videotestsrc ! video/x-raw-rgb !
glupload ! gleffects effect=heat ! glimagesink" which uses 2 samplers
pointing at GL_TEXTURE1 and GL_TEXTURE2, and piglit
glsl-fs-sampler-numbering.
|
|
Bug #27348
|
|
GL_TRUE indicates that the driver accepts the program.
GL_FALSE indicates the program can't be compiled/translated by the
driver for some reason (too many resources used, etc).
Propogate this result up to the GL API: set GL_INVALID_OPERATION
error if glProgramString() was called. Set shader program link
status to GL_FALSE if glLinkProgram() was called.
At this point, drivers still don't do any program checking and
always return GL_TRUE.
|
|
We don't actually care which register is used since we're just
swizzling (0,0,0,0), but it should be a valid variable number.
Detected by clang.
|
|
|
|
Other vendors have enabled ARB_fragment_shader as part of OpenGL 2.0
enablement even on hardware like the 915 with no dynamic branching or
dFdx/dFdy support. But for now we'll leave it disabled because we don't
do any flattening of ifs or loops, which is rather restrictive.
This support is not complete, and may be unstable depending on your shaders.
It passes 10/15 of the piglit glsl tests, but hangs on glean glsl1.
|
|
|
|
|
|
Previously, we were doing it in the midst of the pipeline run, which gave
an opportunity to enable/disable fallbacks, which is certainly the wrong
time to be doing so. This manifested itself in a NULL dereference for PutRow
after transitioning out of a fallback during a run_pipeline in glean glsl1.
|
|
It's misleading to report things like the program having too many native
instructions as a Mesa implementation error, when the program may just be
too big for the hardware.
|
|
|
|
This is nice when paired with INTEL_DEBUG=batch for debugging what's going
out to the hardware.
|
|
There's really no need for two negation fields. This came from the
GL_NV_fragment_program extension. The new, unified Negate bitfield applies
after the absolute value step.
|
|
s/FRAG_RESULT_DEPR/FRAG_RESULT_DEPTH/
s/FRAG_RESULT_COLR/FRAG_RESULT/COLOR/
Remove FRAG_RESULT_COLH (NV half-precision) output since we never used it.
Next, we might merge the COLOR and DATA outputs (COLOR0, COLOR1, etc).
|
|
|
|
Previously fog parameter and specular color are packed into the
same dword. Note specular color should be packed in BGRA for device,
so if fog parameter and specular color all are present, fog parameter
will dirty the alpha term of specular color. This fixes rendering
issue when playing 'Yo Frankie' on 915/945.
|
|
Makefile.template
|
|
|
|
The previous COS function failed badly outside of [-pi/2, pi/2].
|
|
This is described in the link in the comment, and is the same technique that
r300 uses.
|
|
The Taylor series notably fails at producing sin(pi) == 0, which leads to
discontinuity every 2*pi. The quadratic gets us sin(pi) == 0 behavior, at the
expense of going from 2.4% THD with working Taylor series to 3.8% THD (easily
seen on comparative graphs of the two). However, our previous implementation
was producing sin(pi) < -1 and worse, so any reasonable approximation is an
improvement. This also fixes the repeating behavior, where the previous
implementation would repeat sin(x) for x>pi as sin(x % pi) and the opposite
for x < -pi.
|
|
|
|
|
|
|
|
eg: #include "shader/program.h" and remove -I$(TOP)/src/mesa/program
|
|
|
|
|
|
Mostly:
- update #includes
- update STATE_* token code
|
|
1. add PROGRAM_CONSTANT to switch() in src_vector().
2. use _mesa_append_fog_code() to handle fog options in i915ProgramStringNotify().
3. Re-enable some vertex attribute emit code that was previously disabled in i915ValidateFragmentProgram().
|
|
|
|
notification callback through to tnl/ module, fixes glean crash.
|
|
Turn on texture crossbar support.
|
|
"gl_" to match other structs.
|
|
fp/tri-depthwrite.
|
|
|
|
possible values: SATURATE_OFF, SATURATE_ZERO_ONE and SATURATE_PLUS_MINUS_ONE.
|
|
|
|
Instructions, InputsRead, OutputsWritten, and Parameters.
Also, added debug functions: _mesa_print_instruction(),
_mesa_print_program_parameters() and revamp _mesa_print_program().
|
|
|
|
Based on patch by Ian (#4967) but also unify instruction opcodes.
|