| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
This fixes GPU hangs on 7278 in transform feedback tests such as
GTF-GLES3.gtf.GL3Tests.transform_feedback2.transform_feedback2_basic
|
|
|
|
| |
It doesn't depend on V3D_VER, since it's just calling v3d_print_group.
|
|
|
|
|
| |
Noticed when trying to CLIF parse a transform feedback job that hangs on
HW.
|
| |
|
|
|
|
|
|
| |
We were overlapping it with the threadable/nan flags, resulting in
incorrect relocations (threadable/nan included in the offset) and wrong
ordering in the CLIF files.
|
|
|
|
|
| |
It looks like we don't need this flag for anything (not that I'm clear on
what it does), but it makes our struct dumping line up with CLIF parsing.
|
| |
|
|
|
|
|
| |
Noticed when trying to feed our dumps through the CLIF parser. Since this
is a "minus one" field, we were already filling in the value we wanted (0).
|
|
|
|
|
| |
The render_target_* fields gave us pretty(ish) printing, but meant we were
incompatible with CLIF, and had much more verbose code generating them.
|
|
|
|
|
|
| |
The XML ends up noisier if you're only looking at one version, but from
the diffstat there's obvious wins in terms of deduplication. This will
get even more significant if we ever support 3.2 or 4.0.
|
|
|
|
|
|
|
| |
The XML zipper wants one XML per version for filling out its tables, but
we want to do more than one GPU version per XML now. Assume that the
"gen" field will be the same as min_ver and look up our XML text assuming
that they're listed in increasing min_ver.
|
|
|
|
|
| |
This will be used to merge together the V3D 3.3-4.1 XML with the variants
disabled based on the version.
|
|
|
|
|
|
|
| |
It turns out that most V3D versions change very few packets, so keeping
separate copies of the XML per version makes changing the XML a pain as
you have to replicate your changes to each one. This is the start of
changing it so that one XML can generate headers for multiple versions.
|
|
|
|
|
| |
This fixes up their formatting for CLIF files and makes the code more
legible.
|
|
|
|
|
|
|
|
|
|
| |
Right now, we name these fields as "field name minus one" so that your C
code obviously states what the value should be. However, it's easy enough
to handle at the codegen level with another little XML attribute, meaning
less C code and easier-to-read values in CLIF dumping and gdb as well.
(The actual CLIF format for simulator and FPGA replay takes in
pre-minus-one values, so we need it there too).
|
|
|
|
|
|
| |
For a meson -Db_ndebug=true release build on x86_64, reduces text size of
libv3d.a from 53.0k to 51.6k. Inspired by 0d5329d626e3 ("anv: Disable
__gen_validate_value if NDEBUG is set.")
|
|
|
|
|
|
| |
There's a convenient "FTOC" instruction for generating the coverage now,
unlike vc4. This fixes
dEQP-GLES3.functional.multisample.fbo_4_samples.proportionality_alpha_to_coverage
|
|
|
|
| |
The #define existed and was checked in the driver.
|
|
|
|
|
|
| |
Fixes simulator assertion failures in
dEQP-GLES3.functional.shaders.texture_functions.texture.samplercubeshadow_bias_fragment
and similar complicated cases.
|
|
|
|
|
|
|
|
| |
The docs called this field "uses both center W and centroid W", but
actually it's "do you need center W even if varyings don't obviously call
for it?"
Fixes dEQP-GLES3.functional.shaders.builtin_variable.fragcoord_w
|
|
|
|
| |
Fixes dEQP-GLES3.functional.fragment_out.random.26 and 6 others.
|
| |
|
|
|
|
|
| |
Fixes segfaults and undefined behavior in
dEQP-GLES3.functional.fragment_out.basic.fixed.srgb8_alpha8_lowp_float
|
|
|
|
|
|
|
|
|
|
| |
These together get the GLSL 3.00 unorm/snorm pack functions and
MESA_shader_integer operations working.
v2: Fix commit message typo.
Reviewed-by: Matt Turner <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
|
|
|
|
|
|
|
| |
You'd need src/broadcom/cle/ in the -I previously, for srcdir != builddir.
nir was fine at that, but automake didn't have it.
Bugzilla: https://github.com/anholt/mesa/issues/104
|
| |
|
|
|
|
| |
Fixes piglit vs-isnan-*.shader_test at the expense of gl-1.0-spot-light.
|
| |
|
|
|
|
|
|
| |
This allows the driver to load against the merged kernel DRM driver. In
the process, rename most of the build system variables and gallium
plumbing functions.
|
|
|
|
|
|
|
|
|
| |
There is a compile warning from Android 8 (API version 26) from "include cutils/log.h"
warning: "Deprecated: don't include cutils/log.h, use either android/log.h or log/log.h"-W#warnings,
Change to include "log/log.h" on Android 8 or later major version to avoid this warning
Signed-off-by: jenny.q.cao <[email protected]>
Reviewed-by: Tapani Pälli <[email protected]>
|
|
|
|
|
|
|
|
|
| |
It would be nice to share the flags packet emit logic with flat shade
flags, but I couldn't come up with a good way while still using our pack
macros. We need to refactor this to shader record setup at compile time,
anyway.
Fixes ext_framebuffer_multisample-interpolation * centroid-*
|
|
|
|
| |
We don't use ldunifa yet, but we will eventually for UBOs.
|
|
|
|
| |
We don't use TMUWT yet, but we will once we do SSBOs.
|
|
|
|
|
|
|
| |
The next shader gets to start writing the register file during these
slots, so make sure we don't stomp over them.
The only case of hitting this that I could imagine would be dead writes.
|
| |
|
|
|
|
|
| |
For single-sample we have to always program SAMPLE_0, but for multisample
we want to store all the samples.
|
|
|
|
|
|
|
|
|
|
|
| |
util_is_power_of_two_or_zero
The new name make the zero-input behavior more obvious. The next
patch adds a new function with different zero-input behavior.
Signed-off-by: Ian Romanick <[email protected]>
Suggested-by: Matt Turner <[email protected]>
Reviewed-by: Alejandro Piñeiro <[email protected]>
|
|
|
|
|
| |
Signed-off-by: Aaron Watry <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
|
|
|
|
|
|
| |
In the absence of a general NIR or VIR-level scheduler, this at least
avoids spilling in
GTF-GLES3.gtf.GL3Tests.uniform_buffer_object.uniform_buffer_object_storage_layouts
|
|
|
|
| |
Just like TLB without a config uniform, we don't have a register index.
|
|
|
|
|
| |
Fixes failure in
GTF-GLES3.gtf.GL3Tests.draw_instanced.draw_instanced_attrib_size
|
|
|
|
|
|
| |
Our backend needs some sort of vertex position value to emit the scaled
viewport values and such. Fixes potential segfaults in
KHR-GLES3.copy_tex_image_conversions.required.cubemap_negx_cubemap_negx
|
|
|
|
|
|
|
|
|
|
| |
Unfortunately TGSI doesn't record the type of the FS output like GLSL
does, but VC5's TLB writes depend on the output's base type. Just record
the type in the key at variant compile time when we've got a TGSI input
and then fix it up.
Fixes KHR-GLES3.packed_pixels.pbo_rectangle.rgba32i/ui and apparently a
GPU hang that breaks most tests that come after it.
|
|
|
|
|
| |
As you're debugging register allocation, you may have changed the
intervals and not recomputed yet. Just skip the dump in that case.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Our register spilling support is nice to have since vc4 couldn't at all,
but we're still very restricted due to needing to not spill during a TMU
operation, or during the last segment of the program (which would be nice
to spill a value of, when there's a long-lived value being passed through
with little modification from the start to the end).
We could do better by emitting unspills for the last-segment values just
before the last thrsw, since the last segment is probably not the maximum
interference area.
Fixes GTF uniform_buffer_object_arrays_of_all_valid_basic_types and 3
others.
|
|
|
|
| |
The point was to get the MOV, which the MOV_dest already returned.
|
|
|
|
| |
This is nice for debugging when you've made a bad instruction.
|
|
|
|
|
| |
This will let me do lowering late in compilation using the same
instruction builder as we use in nir_to_vir.
|
|
|
|
| |
Anywhere we want to multiply, we probably want this.
|
| |
|