R-b, thank you!
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> I /think/ that should be adequate here too.
Do inexact values not need to handle NaNs strictly, then? I'm not sure
what this corresponds to in the various GLs/CLs/Vulkan specs, hence
labeling this RFC.
___
mesa-dev mailing list
mesa-dev@lists.freedeskt
Mesa
for handling viewport Y flipping, so the meanings of the winding order
bit are flipped for it. To keep things clean on our end, we rename to
explicitly use Gallium (rather than flipped OpenGL) conventions.
Fixes upside-down Xwayland/egl windows.
Suggested-by: Rob Clark
Signed-off-by: Alyssa
I noticed this pattern in glmark's jellyfish scene.
v2: Add inexact qualifier to avoid changing NaN behaviour
I would appreciate if someone did a shader-db run.
Signed-off-by: Alyssa Rosenzweig
Cc: Ilia Mirkin
Cc: Ian Romanick
Cc: Elie Tournier
---
src/compiler/nir/nir_opt_algebraic.p
Mostly, this fixes a number of instances of lines >> 80 chars,
refactoring them into something legible.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/compiler.h | 38 +++
.../panfrost/midgard/midgard_compile.c| 12 ++---
.../drivers/panfrost/m
These were static to midgard_compile.c but are more generally useful
across the compiler; move them to common Midgard code.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/compiler.h | 46
.../drivers/panfrost/midgard/helpers.h| 50
Use the new MIR helpers to cleanup this pass.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/midgard_compile.c| 15 ---
1 file changed, 4 insertions(+), 11 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
b/src/gallium/drivers
efore scheduling (MIR) was separate from the IR after scheduling
(post-schedule MIR), requiring a separate set of utilities to traverse,
using different idioms. There was no good reason for this, and it
restricts our flexibility with the RA. So unify all the things!
Signed-off-by: Alyssa Rosen
These snippets of integer assembly are injected for various purposes
(where we cannot express it yet in pure NIR), but we need to make sure
they are int modded too.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 4
1 file changed, 4 insertions
These masks distinguish scalar/vec2/vec3 loads from the default vec4,
which helps with assembly readability and will enable smarter RA.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff
run post-schedule,
rather than just pre-schedule, without duplicating a whole bunch of
code. This will become particularly important as we want to balance
pipeline register creation with having to implement spilling eventually.
Alyssa Rosenzweig (13):
panfrost/midgard: Remove pinning
panfrost/mi
This mechanism is only used by blend shaders, so just use a move here.
Ideally, it'll be copy-propped and DCE'd away; this removes a source of
considerable indirection and will simplify RA logic.
Signed-off-by: Alyssa Rosenzweig
---
.../panfrost/midgard/midgard_compile.c
In addition to commonizing some related utilities, this adds new MIR
helper functions relevant to passes including pipeline register
creation.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/meson.build | 1 +
.../drivers/panfrost/midgard/compiler.h | 19
A previous optimization converts fmax(x, 0.0) instructions to fmov.pos.
This pass then propagates the .pos from the move up to the source
instruction (when possible). From there, copy propagation will eliminate
the move.
Signed-off-by: Alyssa Rosenzweig
---
.../panfrost/midgard
This fixes liveness analysis with respect to inline constants and
branching.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/midgard_liveness.c| 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard
This code needs to be rewritten to be RA-agnostic, but until register
pinning is setup the right way for fragment output it's broken dead
code; remove it.
Signed-off-by: Alyssa Rosenzweig
---
.../panfrost/midgard/midgard_schedule.c | 82 +++
1 file changed, 12 inser
within the bundle itself. This has theoretical
benefits for power consumption and register pressure.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/meson.build | 1 +
.../drivers/panfrost/midgard/compiler.h | 2 +
.../panfrost/midgard/midgard_ra_pipeline.c| 87
registers = more
threads) and conformance (spilling not yet implemented).
My main lament about this design is that it cannot track per-component
liveness, only per-value; it's not obvious this matters terribly in
practice.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midga
> -.job_index = 1 + (2 * ctx->draw_count),
> +.job_index = 1,
FWIW, the blob has this the "1 + (2*ctx->draw_count)" way for reasons I
never figured out.
--
Can't test right now, but if this is still working (passing
tests/glmark/etc), then R-b as discussed on IRC
Does this address the issues with the previous version raised on IRC? In
particular:
Does mpv work? (Including the on-screen display)
Does sway work?
I suspect this will also fix many tests in dEQP-GLES2, but that's on me;
as long as nothing *regresses* there, it's all good.
> +
> Have never tested those, tbh. Do you know if I should be able to test
> those with whatever is packaged for Debian?
I don't think sway isn't packaged in testing yet (I think it's in
experimental)? mpv is definitely packaged; you can run it onto DRM as
mpv --vo gpu --gpu-context=drm --dr
> Guess there's some flipping in stencil and *coord that needs to be unflipped?
Looks like it, thank you.
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
flip gl_PointCoord.y and
gl_FragCoord.y.
Suggested-by: Rob Clark
Signed-off-by: Alyssa Rosenzweig
Cc: Tomeu Vizoso
---
.../drivers/panfrost/include/panfrost-job.h | 8 +--
.../panfrost/midgard/midgard_compile.h| 2 +
src/gallium/drivers/panfrost/pan_context.c| 54
e code size and poor
scheduling due to extra constants in random places). But for others,
where a 1-op is emulated by a 2-op with an implicit 0 second argument,
that broke things.
Fixes iabs (emulated by iabsdiff).
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgar
These ops are used to accelerate various functions exposed in OpenCL.
This commit only includes the routine additions to the table. They are
not wired through the compiler; rather, they are just here to keep a
reference for the disassembler.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium
division lowering.
Alyssa Rosenzweig (3):
panfrost/midgard: Add a bunch of new ALU ops
panfrost/midgard: Fix 1-arg ALU memory corruption
panfrost/midgard: Lower integer division
.../drivers/panfrost/ci/expected-failures.txt | 144 --
.../drivers/panfrost/midgard/midgard.h
We use the shared nir_lower_idiv pass to lower integer division, fixing
144 dEQP tests. This pass was not applied in the past due to breakage
from iabs fixed earlier in the series.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/ci/expected-failures.txt | 144
Fixes: 2d9802233 ("panfrost/midgard: Extend RA to non-vec4 sources")
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_ra.c | 11 +--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_r
The RA rewrite / schedler refactor series changed huge portions of the
Midgard codebase. Inevitably, that introduced a few hundred regressions
or so on dEQP. Fix them before anyone noticed.
Nothing to see here, folks.
Alyssa Rosenzweig (2):
panfrost/midgard: Fix cubemap regression
panfrost
ss to merge
writeout blocks if possible. It's a bit of a low-priority next to fixing
conformance regressions, of course.
Signed-off-by: Alyssa Rosenzweig
---
.../panfrost/midgard/midgard_schedule.c | 89 +--
1 file changed, 21 insertions(+), 68 deletions(-)
diff -
Pushed.
signature.asc
Description: PGP signature
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
these lines and fix a heck of a lot of tests.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/ci/expected-failures.txt | 412 --
.../panfrost/midgard/midgard_compile.c| 6 -
2 files changed, 418 deletions(-)
diff --git a/src/gallium/drivers/panfrost/ci/exp
s).
Fixes some blend shader regressions.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/compiler.h | 1 +
.../drivers/panfrost/midgard/midgard_liveness.c | 16
.../panfrost/midgard/midgard_ra_pipeline.c | 7 +++
3 files changed, 24 insertions
While clamping behaviour for floats was clear from GL, the int behaviour
is only known From OpenCL contortion with convert_*_sat() functions.
With the underlying functions known, clean up the codebase, likely
fixing outmod type related bugs in the process.
Signed-off-by: Alyssa Rosenzweig
---
.../dr
n the 2x higher
mode with the .hi modifier. (For 64-bit, things are hairier, since there
is not an 128-bit int mode).
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble.c| 28 ---
.../drivers/panfrost/midgard/midgard.h| 4 +--
2 files chan
an be herculean).
Alyssa Rosenzweig (6):
panfrost/midgard: Add rounding mode specific opcodes
panfrost/midgard: Note floating compares type convert
panfrost/midgard: Add integer outmods
panfrost/midgard: Add shifting int modifiers
panfrost/midgard: Expose vec8/vec16 modes
panfrost/mi
ay to ensure the
correct output modifiers are used.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_ops.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_ops.c
b/src/gallium/drivers/panfrost/mi
than what was exposed before.
Outside of some fixed routines for blending, none of the above is
supported in the compiler yet. But it's better to have it in the ISA
definitions and disassembler than not, for future use if nothing else.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfro
This adds a set of opcodes for performing moves and type conversions
with respect to particular rounding modes, required for OpenCL.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/midgard.h| 27 ++-
.../panfrost/midgard/midgard_compile.c| 18
;, which is semantically distinct due to the lessened opportunity
for parallelism but (potentially) greater precision. Adding a postfix
removes the ambiguity and relieves mental gymnastics reading weird
disassemblies even in some cases that are not ambiguous.
Signed-off-by: Alyssa Rosenzweig
---
src/
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 4
1 file changed, 4 insertions(+)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index 032f4a91196..4d28e151bda
Fixes more regressions. Sigh.
Alyssa Rosenzweig (4):
panfrost/midgard: Fix crash with unused SSA values
panfrost/midgard: Apply component to load_input
panfrost/midgard: Remove varyings delay pass
panfrost/midgard: Vectorize I/O
.../drivers/panfrost/ci/expected-failures.txt | 3
This uses the new mesa/st functionality for NIR I/O vectorization, which
eliminates a number of corner cases (resulting in assorted dEQP
failures and regressions) and should improve performance substantial due
to lessened pressure on the load/store pipe.
Signed-off-by: Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 4
1 file changed, 4 insertions(+)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index dd86e8bceee..032f4a91196
This pass interfered with the more delicate path required for
non-vectorized I/O. It's also ugly and duplicating the job of an actual
honest-to-goodness scheduler.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/compiler.h | 3 -
.../panfrost/midgard/midgard_comp
This patch set fixes the remaining control flow tests (at least, the
"cull dead branches" patch does the fix -- the rest of the patches are
cleanups and such incurred during the debugging session leading to that
patch).
Alyssa Rosenzweig (6):
panfrost/ci: Note some since-fixed tests
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/ci/expected-failures.txt | 26 ---
1 file changed, 26 deletions(-)
diff --git a/src/gallium/drivers/panfrost/ci/expected-failures.txt
b/src/gallium/drivers/panfrost/ci/expected-failures.txt
index 12f3c48047b..cd80d78169d
This fixes bugs with complex control flow.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/ci/expected-failures.txt | 2 --
.../panfrost/midgard/midgard_compile.c| 31 +++
2 files changed, 31 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers
Trivial.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/gallium/drivers/panfrost/midgard/disassemble.c
index dcab841b164
Trivial cleanup.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index
Just makes it a little more obvious what's going on.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble.c| 41 +++
1 file changed, 34 insertions(+), 7 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/ga
This helps with debugging scheduling/emission.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/compiler.h | 1 +
.../drivers/panfrost/midgard/midgard_print.c| 13 +
2 files changed, 14 insertions(+)
diff --git a/src/gallium/drivers/panfrost
these lines and fix a heck of a lot of tests.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/ci/expected-failures.txt | 412 --
.../panfrost/midgard/midgard_compile.c| 6 -
2 files changed, 418 deletions(-)
diff --git a/src/gallium/drivers/panfrost/ci/exp
We were previously lowering to inand, but the second arg was not
duplicated so inot would always return ~0. Oops.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/ci/expected-failures.txt| 16
1 file changed, 16 deletions(-)
diff --git a/src/gallium/drivers/panfrost/ci/expected-failures.txt
b/src/gallium/drivers/panfrost/ci/expected-failures.txt
index 6be9c83f4af..1f4e95f25ce
These depended on the wallpaper reload.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/ci/expected-failures.txt | 58 ---
1 file changed, 58 deletions(-)
diff --git a/src/gallium/drivers/panfrost/ci/expected-failures.txt
b/src/gallium/drivers/panfrost/ci/expected
R-b: , but please use my c.c address from now on; I don't
normally get email here on work hours. Thank you!
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
It's just -easier- to render to aligned framebuffers. For winsys
targets, we already align, but even for an internal linear FBO we ought
to align everything nicely.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/pan_resource.c | 13 ++---
1 file changed, 10 inser
A-b, I think. Nice :)
signature.asc
Description: PGP signature
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
pieces (which led
to discovering the helper invocations enable bit in the first place).
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/ci/expected-failures.txt | 72 ---
.../drivers/panfrost/include/panfrost-job.h | 14 +++-
src/gallium/drivers/panfrost/pan_context.c
Now that we support custom strides on mipmapped lines textures
(theoretically, at least), extend the stride check to support mipmaps.
Fixes incorrect strides of linear windows in Weston.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/pan_context.c | 22
We might render to it.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/pan_resource.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers/panfrost/pan_resource.c
b/src/gallium/drivers/panfrost/pan_resource.c
index bce3426fd67..0c45e258b96
This seems to be a performance win, but more rigorous testing is
necessary to figure out the exact circumstances when this is good/bad.
Incidentally, this fixes non-aligned ZS.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/pan_afbc.c | 4 +++-
src/gallium/drivers
This eliminates some unknowns, clarifies 3D textures, and will maybe
help with array/shadow textures?
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble.c | 7 ++-
src/gallium/drivers/panfrost/midgard/midgard.h | 8 ++--
.../drivers/panfrost/midgard
This patch identifies the two modes of offsets in a texture instruction
(immediate and register, disambiguated by the bit-once-known-as
"has_offset") and implements disassembly for both.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 8 ++--
src/gallium/drivers/panfrost/midgard/midgard.h | 8 +++-
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/gallium
We decode most of the GLES3 texture ops here, prompted by the need to
support textureLod on GLES2 and also because texture ops are massive but
this tames them *considerably*. Except for the last patch, that's some
weird end-of-day stuff.
Alyssa Rosenzweig (18):
panfrost/midgard: Expand te
...on the load/store unit, not the ALUs. Looks goofy but hey.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard.h | 5 +
src/gallium/drivers/panfrost/midgard/midgard_ops.c | 1 +
2 files changed, 6 insertions(+)
diff --git a/src/gallium/drivers/panfrost
Turns out this modifier field is the same as Utgard-PP.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 6 --
src/gallium/drivers/panfrost/midgard/midgard.h | 5 +++--
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/src/gallium
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble.c| 32 +++
.../drivers/panfrost/midgard/midgard.h| 5 ++-
2 files changed, 21 insertions(+), 16 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/gallium
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/gallium/drivers/panfrost/midgard/disassemble.c
index fc5b4ebfec6..3c59119e523
With an extra flag, we're able to do a perspective division "for free"
while loading a varying.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble.c | 13 ++---
src/gallium/drivers/panfrost/midgard/midgard.h | 16 +++-
2 fi
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/gallium/drivers/panfrost/midgard/disassemble.c
index 10729ca122b..5f553ba27a0
It's not at all clear why this work for texelFetch but not texture.
Maybe the top bits are dual-purpose on other texturing ops...?
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble.c| 20 +++
.../drivers/panfrost/midgard/midgard.h
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble.c| 21 ++-
.../drivers/panfrost/midgard/midgard.h| 13 ++--
2 files changed, 23 insertions(+), 11 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard.h | 6 --
src/gallium/drivers/panfrost/midgard/midgard_ops.c | 3 ++-
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard.h
b/src/gallium/drivers
This allows us to show a call to textureLod in a reasonable way.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 11 ---
src/gallium/drivers/panfrost/midgard/midgard.h | 5 +++--
2 files changed, 7 insertions(+), 9 deletions(-)
diff --git
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/gallium/drivers/panfrost/midgard/disassemble.c
index 6be262f7ba0
Its encoding differs slightly from the LOD used in normal texture calls.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 9 +
1 file changed, 9 insertions(+)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/gallium/drivers
This is clear for texelFetch, hence the confusion with Bifrost's filter
field, but it's much more general in reality.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 5 +
src/gallium/drivers/panfrost/midgard/midgard.h | 4
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/disassemble.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/gallium/drivers/panfrost/midgard/disassemble.c
index 4ef82140b7f..bada8974396 100644
--- a
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble.c| 19 +++
.../drivers/panfrost/midgard/midgard.h| 2 +-
2 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c
b/src/gallium
For constant LODs/biases, we can use an immediate embedded in the
texture (already decoded); for non-constant, we have to use a register
squeezed into the usual immediate field, which is decoded here.
Signed-off-by: Alyssa Rosenzweig
---
.../drivers/panfrost/midgard/disassemble.c| 22
We refactor the main tex handling to fit a bias argument in as well.
Signed-off-by: Alyssa Rosenzweig
---
.../panfrost/midgard/midgard_compile.c| 65 ---
1 file changed, 55 insertions(+), 10 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard
We do have native support for perspective division on the load/store
unit, but this is for the future, something ideally we would select
generally, not just for textures. Meanwhile, flipping on projector
lowering works now.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost
ected tests.
Alyssa Rosenzweig (6):
panfrost/midgard: Implement txb op
panfrost/midgard: Implement txl
panfrost/midgard: Lower texture projectors
panfrost/midgard: Set minimal swizzle on texture input
panfrost/midgard: Assert on unknown texture source
panfrost/midgard: Differentiate v
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/helpers.h | 2 ++
src/gallium/drivers/panfrost/midgard/midgard_emit.c | 8 +---
src/gallium/drivers/panfrost/midgard/midgard_schedule.c | 9 -
3 files changed, 15 insertions(+), 4 deletions
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index c328d2d69f9
This follows the txb implementation, but requires an adjustment to how
the cont/last flags are set.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/midgard/midgard_compile.c | 10 +-
src/gallium/drivers/panfrost/midgard/midgard_emit.c| 9 ++---
2 files changed
onmental option "PANTRACE_BASE".
Instead, for equivalent functionality set "PAN_MESA_DEBUG=trace" and
redirect stdout to the file of your choosing.
This should be debugging Panfrost much more pleasant.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/
> Any ideas on why these two changes get kmscube working on T720?
...No, absolutely none. You're positive the known_unknown thing is
needed? If that's so, I'm really concerned because I was under the
impression those were magic structures we didn't need to deal with
ourself. If that assumption is.
> +uint32_t *known_unknown = ((void*)ctx->misc_0.cpu + 40960);
> +*known_unknown = 0xa000;
> +
This is doubly scary, since misc_0 is marked INVISIBLE/GROWABLE. Rob
has been coding under the assumption growable must never be accessed
CPU-side. If this is strictly necessary (and
Both R-b, thank you! Wonder what's up with the RK3288 regressions
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Reviewed-by: Alyssa Rosenzweig
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
) (the
latter function implemented similarly). Still, it's worth having a
dedicated check for this; semantically, in the context of masks, this
check is meaningful standalone, justifying an independent implementation
from the existing util_is_power_of_two* utilites.
Signed-off-by: Alyssa Rosen
These names are from the replay workaround in kbase; they begin to shine
some light on the meaning of these fields. In particular, we now
understand why the "tiler_meta" field has the effect it does on
performance in certain scenes (controlling tile granularity).
Signed-off-by: Alyssa
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/pan_tiler.h | 44
1 file changed, 44 insertions(+)
create mode 100644 src/gallium/drivers/panfrost/pan_tiler.h
diff --git a/src/gallium/drivers/panfrost/pan_tiler.h
b/src/gallium/drivers/panfrost
I'm not sure how the blob does it, but this seems to be a dead simple
test and roughly corresponds to what I've noticed from the blob, so
maybe it's good enough.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/pan_tiler.c | 65
1 f
This explains how the polygon list is allocated, updating the headers
appropiately to sync the terminology.
Signed-off-by: Alyssa Rosenzweig
---
src/gallium/drivers/panfrost/pan_tiler.c | 86
1 file changed, 86 insertions(+)
create mode 100644 src/gallium/drivers
801 - 900 of 991 matches
Mail list logo