aboutsummaryrefslogtreecommitdiffstats
path: root/src/panfrost
Commit message (Collapse)AuthorAgeFilesLines
* pan/mdg: Apply outmodsAlyssa Rosenzweig2020-05-191-0/+39
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* pan/mdg: Use helpers for branch/discard inversionAlyssa Rosenzweig2020-05-191-2/+18
| | | | | | | Doesn't come up on glmark but would covered by the old passes. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* pan/mdg: Remove invert optimizationsAlyssa Rosenzweig2020-05-197-462/+1
| | | | | | | Unused since last commit. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* pan/mdg: Treat inot as a modifierAlyssa Rosenzweig2020-05-195-8/+105
| | | | | | | | With this, we may remove all invert passes and simply look at the src modifier on NIR->MIR and fixup at pack time. No shader-db changes. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* pan/mdg: Apply abs/neg modifiersAlyssa Rosenzweig2020-05-191-0/+9
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* pan/mdg: Ingest fsat_signed/fclamp_posAlyssa Rosenzweig2020-05-192-0/+9
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* pan/mdg: Prepare for modifier helpersAlyssa Rosenzweig2020-05-192-87/+75
| | | | | | | | | We have to restructure to ensure NIR->MIR does not mutate the NIR and to allow passing around dest/outmods for the new helpers. If NIR->MIR were better designed this would be easier. Sigh. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* pan/mdg: Drop nir_lower_to_source_modsAlyssa Rosenzweig2020-05-191-5/+0
| | | | | | | shader-db regressions fixed shortly. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* pan/mdg: Remove .pos propagation passAlyssa Rosenzweig2020-05-191-90/+0
| | | | | | | | Will be replaced later in the series. shader-db regressions but those fixed momentarily. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* panfrost: Add modifier detection helpersAlyssa Rosenzweig2020-05-194-0/+134
| | | | | | | | | | With the goal of removing modifiers from NIR, these helpers let us detect modifier patterns without mutating the underlying NIR. These were intended for upstream, but due to various issues are being (temporarily) vendored. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
* panfrost: Enable AFBC for Z24X8Alyssa Rosenzweig2020-05-191-5/+2
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5069>
* panfrost: Fix Z24 vs Z32 mixupAlyssa Rosenzweig2020-05-193-5/+4
| | | | | | | | We don't actually support Z32_UNORM; the format we've been using as such is in fact Z24X8 / Z24S8. Fix that and drop Z32_UNORM. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5069>
* panfrost: Switch formats to tableAlyssa Rosenzweig2020-05-193-196/+270
| | | | | | | | | | | | | Rather than heuristically guessing what PIPE formats correspond to what in the hardware, hardcode a table. This is more verbose, but a lot more obvious -- the previous format support code was a source of endless silent bugs. v2: Don't report RGB233 (icecream95). Allow RGB5 for texturing (icecream95). Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5069>
* pan/decode: Fix min/max_tile_coord mixupAlyssa Rosenzweig2020-05-191-1/+1
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5099>
* pan/decode: Use a page table for tracking mmapsAlyssa Rosenzweig2020-05-192-25/+17
| | | | | | | | | | We create a hash table mapping GPU va's to mmap structures, such that searching for a mapped address is effectively O(1) rather than O(N) to the number of mapped entries as with the previous linked list approach. This is a memory-time tradeoff, but the speed-up is tracing is notable. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5099>
* gallium: change comments to remove 'state tracker'Marek Olšák2020-05-131-1/+1
| | | | | | | Acked-by: Eric Anholt <[email protected]> Acked-by: Alyssa Rosenzweig <[email protected]> Acked-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4902>
* pan/mdg: Fix derivative swizzleAlyssa Rosenzweig2020-05-121-4/+2
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5014>
* pan/mdg: Set types for derivativesAlyssa Rosenzweig2020-05-121-0/+2
| | | | | | | Closes #2900 Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5014>
* pan/mdg: Remove texture_op_countAlyssa Rosenzweig2020-05-124-15/+0
| | | | | | | | Was used as a crude approximation of the terminate flag, which we now can do properly. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5014>
* pan/mdg: Use analysis to set .cont/.last flagsAlyssa Rosenzweig2020-05-121-10/+2
| | | | | | | | | | | | | | Corresponds roughly to what we analyze. Note that "terminate AND execute" is a contradiction (rather: it's equivalent to just terminating), hence why there are only three possibilities for the states of the flags: .cont = continue, don't execute .last = don't continue, don't execute .cont.last = continue and execute Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5014>
* pan/mdg: Use the helper invo analyze passesAlyssa Rosenzweig2020-05-121-0/+5
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5014>
* pan/mdg: Analyze helper execution requirementsAlyssa Rosenzweig2020-05-125-8/+99
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5014>
* pan/mdg: Analyze helper invocation terminationAlyssa Rosenzweig2020-05-125-0/+112
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5014>
* pan/mdg: Explain helper invocations dataflow theoryAlyssa Rosenzweig2020-05-121-0/+63
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5014>
* pan/midgard: Fix old style shadowsIcecream952020-05-121-0/+4
| | | | | | | | This fixes the sky being red in OpenMW, as well as some of the Mesa demos using shadows (shadowtex, shadow_sampler). Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4997>
* panfrost: don't always build bifrost_compilerQiang Yu2020-05-091-1/+1
| | | | | | | | | | | | | | src/panfrost/shared is shared with lima driver, build bifrost_compiler for lima driver is meaningless and get link error when only lima driver is enabled. So only build bifrost_compiler when configued with: meson -Dtools=panfrost Fixes: ec2a59cd7aa4 "panfrost: Move non-Gallium files outside of Gallium" Reviewed-by: Alyssa Rosenzweig <[email protected]> Signed-off-by: Qiang Yu <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4960>
* panfrost: Handle MALI_RGB8_UNORM in panfrost_format_to_bifrost_blendTomeu Vizoso2020-05-071-0/+1
| | | | | | Signed-off-by: Tomeu Vizoso <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4944>
* pan/decode: Fix flags_hi printingAlyssa Rosenzweig2020-05-071-1/+1
| | | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Signed-off-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4944>
* pan/bit: Add IMATH packing testsAlyssa Rosenzweig2020-05-041-1/+17
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bit: Factor out identity swizzle helperAlyssa Rosenzweig2020-05-041-6/+10
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bit: Use swizzle helper for roundAlyssa Rosenzweig2020-05-041-9/+5
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bit: Remove test namesAlyssa Rosenzweig2020-05-041-84/+19
| | | | | | | We already have the disasm which is authoritative. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bit: Interpret v4i8 opsAlyssa Rosenzweig2020-05-041-1/+10
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bit: Interpret IMATHAlyssa Rosenzweig2020-05-041-2/+13
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bi: Don't schedule <32-bit IMATH to FMAAlyssa Rosenzweig2020-05-041-0/+9
| | | | | | | The ops don't exist. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bi: Add SUB.v2i16/SUB.v4i8 opcodes to disasmAlyssa Rosenzweig2020-05-041-0/+2
| | | | | | | Like their ADD counterparts. Only on ADD. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bi: Pack ADD IADD/ISUB for 8/16/32Alyssa Rosenzweig2020-05-042-0/+35
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bi: Pack FMA IADD/ISUB 32Alyssa Rosenzweig2020-05-042-2/+18
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bi: Use IMATH for nir_op_iaddAlyssa Rosenzweig2020-05-043-1/+26
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bi: Rename BI_ISUB to BI_IMATHAlyssa Rosenzweig2020-05-046-7/+7
| | | | | | | We'll use this for iadd, etc too which share similar characteristics. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4890>
* pan/bit: Add ICMP testsAlyssa Rosenzweig2020-05-041-0/+23
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>
* pan/bit: Add more 16-bit fmod testsAlyssa Rosenzweig2020-05-041-4/+20
| | | | | | | Swizzles and more abs. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>
* pan/bit: Add swizzles to round testsAlyssa Rosenzweig2020-05-041-4/+11
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>
* pan/bi: Don't pack ICMP on FMAAlyssa Rosenzweig2020-05-041-0/+9
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>
* pan/bi: Pack ADD ICMP 16Alyssa Rosenzweig2020-05-042-7/+29
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>
* pan/bi: Pack ADD ICMP 32Alyssa Rosenzweig2020-05-041-1/+66
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>
* pan/bi: Structify ADD ICMP 16Alyssa Rosenzweig2020-05-041-0/+15
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>
* pan/bi: Pack ADD.DISCARDAlyssa Rosenzweig2020-05-041-0/+46
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>
* pan/bi: Handle discard/branch in get_component_countAlyssa Rosenzweig2020-05-041-0/+5
| | | | | | | No dest requires special handling. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>
* pan/bi: Fuse conditions into discard_ifAlyssa Rosenzweig2020-05-041-0/+16
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4883>