Skip to content
Snippets Groups Projects

R600 nir assorted fixes

Merged Gert Wollny requested to merge gerddie/mesa:r600-nir-assorted-fixes into master

This is a bunch of many small fixes and optimizations

Edited by Gert Wollny

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • added r600 label

  • Gert Wollny mentioned in merge request !5084 (merged)

    mentioned in merge request !5084 (merged)

  • Gert Wollny added 1 commit

    added 1 commit

    • c41e44f6 - r600/sfn: Don't reorder outputs by location

    Compare with previous version

  • Gert Wollny added 31 commits

    added 31 commits

    • f12068d3 - r600: Lower int64 ops from TGSI-to-NIR shaders too
    • 1a78b6b4 - r600: Lower lerp after tgsi_to_nir
    • 6c2c0c39 - r600: Add support for loading index register from other than chan X
    • 05c1b244 - r600/sfn: Handle CF index loading from non-X channel
    • 9210ca67 - r600/sfn: rework getting a vector and uniforms from the value pool
    • d0ca9333 - r600/sfn: Skip move instructions if they are only ssa and without modifiers
    • 9c6fbd07 - r600/sfn: re-use an allocated register in lookup
    • ac699d50 - r600/sfn: skip copying LOD if the target register is is the same
    • a2f3d430 - r600/sfn: Fix memring print output
    • 2586f4be - r600/sfn: Fix RING instruction assembly emission
    • 21f9a44c - r600/sfn: Fix GDS assembly emission
    • 2d0c34aa - r600/sfn: Fix RAT instruction assembly emission
    • 422ed471 - r600/sfn: Make allocate_reserved_registers forward to a virtual function
    • c15fb803 - r600/sfn: Fix handling of output register index
    • a8d81503 - r600/sfn: Make 3vec loads skip possible moves
    • b855a3db - r600/sfn: Add support for viewport index output
    • c2316813 - r600/sfn: Take FOGC, and backcolors into account im GS outputs
    • 253ba764 - r600/sfn: Handle loading sample_pos
    • 00bcddaf - r600/sfn: Add FS output sample_mask
    • 1b22e97e - r600/sfn: Don't reject VARYING_SLOT_PCNT
    • 86c5524b - r600/sfn: remove pointless check
    • 8dd2c168 - r600/sfn: assert when alu dest is missing
    • 10195c67 - r600/sfn: Make sure FS outputs are not written twice
    • 47c02f55 - r600/sfn: support indirect sampler buffer reads.
    • 13c744ff - r600/sfn: Add support for texture_samples
    • 8dff30ee - r600/sfn: use the per shader atomic base
    • 51a3bcc8 - r600/sfn: RAT: don't assert for return value check when storing a value
    • 566af6b0 - r600/sfn: SSBO: Fix query of dest components
    • fa7feb08 - r600/sfn: Fix clip vertex output as possible stream variable
    • 2a734505 - r600/sfn: Fix splitting constants that come from different kcache banks.
    • b1a0945a - r600/sfn: Don't reorder outputs by location

    Compare with previous version

  • Gert Wollny added 31 commits

    added 31 commits

    • f4236dd9 - r600: Lower int64 ops from TGSI-to-NIR shaders too
    • 4c1bb8ad - r600: Lower lerp after tgsi_to_nir
    • 68ff5329 - r600: Add support for loading index register from other than chan X
    • ae8b933c - r600/sfn: Handle CF index loading from non-X channel
    • 28c3d9c1 - r600/sfn: rework getting a vector and uniforms from the value pool
    • 4ef0cdd7 - r600/sfn: Skip move instructions if they are only ssa and without modifiers
    • bc4774e3 - r600/sfn: re-use an allocated register in lookup
    • 26dd7cc4 - r600/sfn: skip copying LOD if the target register is is the same
    • b749be07 - r600/sfn: Fix memring print output
    • 38a9b6df - r600/sfn: Fix RING instruction assembly emission
    • d1466ec6 - r600/sfn: Fix GDS assembly emission
    • 6c5d8fca - r600/sfn: Fix RAT instruction assembly emission
    • 18f90e0e - r600/sfn: Make allocate_reserved_registers forward to a virtual function
    • 80bf0ea4 - r600/sfn: Fix handling of output register index
    • bccf259d - r600/sfn: Make 3vec loads skip possible moves
    • 215e4737 - r600/sfn: Add support for viewport index output
    • 641928e1 - r600/sfn: Take FOGC, and backcolors into account im GS outputs
    • 348615cc - r600/sfn: Handle loading sample_pos
    • dd5febc4 - r600/sfn: Add FS output sample_mask
    • 89cf76da - r600/sfn: Don't reject VARYING_SLOT_PCNT
    • c6fd00e4 - r600/sfn: remove pointless check
    • a5980d33 - r600/sfn: assert when alu dest is missing
    • 8dd91c77 - r600/sfn: Make sure FS outputs are not written twice
    • a15f17c5 - r600/sfn: support indirect sampler buffer reads.
    • 42e0e6ba - r600/sfn: Add support for texture_samples
    • 2408ba26 - r600/sfn: use the per shader atomic base
    • 987746d7 - r600/sfn: RAT: don't assert for return value check when storing a value
    • e0aafa61 - r600/sfn: SSBO: Fix query of dest components
    • 6f0318ed - r600/sfn: Fix clip vertex output as possible stream variable
    • 17137294 - r600/sfn: Fix splitting constants that come from different kcache banks.
    • 0957c845 - r600/sfn: Don't reorder outputs by location

    Compare with previous version

  • Gert Wollny added 28 commits

    added 28 commits

    • 3bc58617 - r600/sfn: rework getting a vector and uniforms from the value pool
    • bdbf446a - r600/sfn: Skip move instructions if they are only ssa and without modifiers
    • e901000d - r600/sfn: re-use an allocated register in lookup
    • dba44083 - r600/sfn: skip copying LOD if the target register is is the same
    • 67583f83 - r600/sfn: Fix memring print output
    • 80a86e86 - r600/sfn: Fix RING instruction assembly emission
    • 96fe53b4 - r600/sfn: Fix GDS assembly emission
    • f306eb35 - r600/sfn: Fix RAT instruction assembly emission
    • df26d2f7 - r600/sfn: Make allocate_reserved_registers forward to a virtual function
    • 47bf8ba4 - remove from virtualizing reserved regs
    • 3bbdf0db - r600/sfn: Fix handling of output register index
    • bf602d8f - r600/sfn: Make 3vec loads skip possible moves
    • edcd86df - r600/sfn: Add support for viewport index output
    • a3a79170 - r600/sfn: Take FOGC, and backcolors into account im GS outputs
    • 2ac149be - r600/sfn: Handle loading sample_pos
    • d72622f1 - r600/sfn: Add FS output sample_mask
    • b6f917e0 - r600/sfn: Don't reject VARYING_SLOT_PCNT
    • 90e9d1a6 - r600/sfn: remove pointless check
    • 41311186 - r600/sfn: assert when alu dest is missing
    • 75a6148f - r600/sfn: Make sure FS outputs are not written twice
    • b76c2c4c - r600/sfn: support indirect sampler buffer reads.
    • 04d69a61 - r600/sfn: Add support for texture_samples
    • 6b7eaa1d - r600/sfn: use the per shader atomic base
    • bf1298ca - r600/sfn: RAT: don't assert for return value check when storing a value
    • 103c544c - r600/sfn: SSBO: Fix query of dest components
    • 6f77c2cc - r600/sfn: Fix clip vertex output as possible stream variable
    • 6c6e7d6d - r600/sfn: Fix splitting constants that come from different kcache banks.
    • 0b0b85c3 - r600/sfn: Don't reorder outputs by location

    Compare with previous version

  • Gert Wollny added 33 commits

    added 33 commits

    • 52fbb0cc - r600: enable TEXCOORD semantic for TGSI.
    • d595c703 - r600/sfn: Unify semantic name and index query and use TEXCOORD semantic
    • a5086d94 - r600/sfn: Fix printing vertex fetch instruction flags
    • 6564601a - r600: Lower int64 ops from TGSI-to-NIR shaders too
    • 009b68f6 - r600: Lower lerp after tgsi_to_nir
    • 203e0c3d - r600: Add support for loading index register from other than chan X
    • ec947fd4 - r600/sfn: Handle CF index loading from non-X channel
    • eeaa5407 - r600/sfn: rework getting a vector and uniforms from the value pool
    • 93472d9f - r600/sfn: Skip move instructions if they are only ssa and without modifiers
    • 78928b80 - r600/sfn: re-use an allocated register in lookup
    • 4466c48a - r600/sfn: skip copying LOD if the target register is is the same
    • f946244d - r600/sfn: Fix memring print output
    • 8ebfc22d - r600/sfn: Fix RING instruction assembly emission
    • 79493231 - r600/sfn: Fix GDS assembly emission
    • 83163629 - r600/sfn: Fix RAT instruction assembly emission
    • afe00b77 - r600/sfn: Make allocate_reserved_registers forward to a virtual function
    • a1115924 - r600/sfn: Fix handling of output register index
    • 247d061c - r600/sfn: Make 3vec loads skip possible moves
    • 0cdefafc - r600/sfn: Add support for viewport index output
    • 05207563 - r600/sfn: Take FOGC, and backcolors into account im GS outputs
    • f428f44d - r600/sfn: Handle loading sample_pos
    • d89355cf - r600/sfn: Add FS output sample_mask
    • 5c7fc557 - r600/sfn: Don't reject VARYING_SLOT_PCNT
    • 2fad5d23 - r600/sfn: remove pointless check
    • d03468b0 - r600/sfn: assert when alu dest is missing
    • 22af3933 - r600/sfn: support indirect sampler buffer reads.
    • 952150af - r600/sfn: Add support for texture_samples
    • 74835b5f - r600/sfn: use the per shader atomic base
    • 259a4df5 - r600/sfn: RAT: don't assert for return value check when storing a value
    • 39be278b - r600/sfn: SSBO: Fix query of dest components
    • 5674430c - r600/sfn: Fix clip vertex output as possible stream variable
    • 0cfe107f - r600/sfn: Fix splitting constants that come from different kcache banks.
    • 4aa6f687 - r600/sfn: Don't reorder outputs by location

    Compare with previous version

  • Gert Wollny added 41 commits

    added 41 commits

    • 4aa6f687...5e105068 - 7 commits from branch mesa:master
    • 4fafd286 - r600: enable TEXCOORD semantic for TGSI.
    • 26bce302 - r600/sfn: Unify semantic name and index query and use TEXCOORD semantic
    • 18e23624 - r600/sfn: Fix printing vertex fetch instruction flags
    • ac2f7209 - r600: Lower int64 ops from TGSI-to-NIR shaders too
    • acb3bd76 - r600: Lower lerp after tgsi_to_nir
    • 65dd9fbb - r600: Add support for loading index register from other than chan X
    • 156094e6 - r600/sfn: Handle CF index loading from non-X channel
    • 5d0223c0 - r600/sfn: rework getting a vector and uniforms from the value pool
    • c3153a2c - r600/sfn: Skip move instructions if they are only ssa and without modifiers
    • 3ade296c - r600/sfn: re-use an allocated register in lookup
    • 5525c6c1 - r600/sfn: skip copying LOD if the target register is is the same
    • 4cbc7b91 - r600/sfn: Fix memring print output
    • 9a4c2205 - r600/sfn: Fix RING instruction assembly emission
    • 742c3f50 - r600/sfn: Fix GDS assembly emission
    • ccbeb480 - r600/sfn: Fix RAT instruction assembly emission
    • 10688eb0 - r600/sfn: Make allocate_reserved_registers forward to a virtual function
    • 68dea131 - r600/sfn: Fix handling of output register index
    • 6176c215 - r600/sfn: Make 3vec loads skip possible moves
    • c1817488 - r600/sfn: Add support for viewport index output
    • 68e6fe7b - r600/sfn: Take FOGC, and backcolors into account im GS outputs
    • 7107aeb3 - r600/sfn: Handle loading sample_pos
    • ce148f2f - r600/sfn: Add FS output sample_mask
    • 1155ebd3 - r600/sfn: Don't reject VARYING_SLOT_PCNT
    • 8c0eb943 - r600/sfn: remove pointless check
    • 08dbcac1 - r600/sfn: assert when alu dest is missing
    • f170602c - r600/sfn: support indirect sampler buffer reads.
    • 2f675952 - r600/sfn: Add support for texture_samples
    • 72dae8b8 - r600/sfn: use the per shader atomic base
    • 077d08bf - r600/sfn: RAT: don't assert for return value check when storing a value
    • b6d68bcf - r600/sfn: SSBO: Fix query of dest components
    • c68556f2 - r600/sfn: Fix clip vertex output as possible stream variable
    • 845b77ef - r600/sfn: Fix splitting constants that come from different kcache banks.
    • 374594f7 - r600/sfn: Don't reorder outputs by location
    • 1fe4d352 - r600/sfn: Fix printing ALU op without dest

    Compare with previous version

  • Dave Airlie added 52 commits

    added 52 commits

    • 1fe4d352...b11aa122 - 19 commits from branch mesa:master
    • 0313264f - r600/sfn: Unify semantic name and index query and use TEXCOORD semantic
    • 1f05c518 - r600/sfn: Fix printing vertex fetch instruction flags
    • bc09c8dc - r600: Lower int64 ops from TGSI-to-NIR shaders too
    • f7a1734f - r600: Lower lerp after tgsi_to_nir
    • 60aaa08e - r600: Add support for loading index register from other than chan X
    • 61f10bea - r600/sfn: Handle CF index loading from non-X channel
    • bb570d6b - r600/sfn: rework getting a vector and uniforms from the value pool
    • 413c28e6 - r600/sfn: Skip move instructions if they are only ssa and without modifiers
    • a189bf5c - r600/sfn: re-use an allocated register in lookup
    • efec783c - r600/sfn: skip copying LOD if the target register is is the same
    • 6129a8df - r600/sfn: Fix memring print output
    • ff90977e - r600/sfn: Fix RING instruction assembly emission
    • 9e8e1508 - r600/sfn: Fix GDS assembly emission
    • 7878b3b9 - r600/sfn: Fix RAT instruction assembly emission
    • ea5f771c - r600/sfn: Make allocate_reserved_registers forward to a virtual function
    • ce270c7c - r600/sfn: Fix handling of output register index
    • f79984f1 - r600/sfn: Make 3vec loads skip possible moves
    • a3d2a1ff - r600/sfn: Add support for viewport index output
    • 7de526ba - r600/sfn: Take FOGC, and backcolors into account im GS outputs
    • 75027e03 - r600/sfn: Handle loading sample_pos
    • c1dae86d - r600/sfn: Add FS output sample_mask
    • dbd4873d - r600/sfn: Don't reject VARYING_SLOT_PCNT
    • 72d56ef7 - r600/sfn: remove pointless check
    • 9ca66b2d - r600/sfn: assert when alu dest is missing
    • 89a50a7a - r600/sfn: support indirect sampler buffer reads.
    • fe7b38a2 - r600/sfn: Add support for texture_samples
    • 113cd914 - r600/sfn: use the per shader atomic base
    • 0f3c2521 - r600/sfn: RAT: don't assert for return value check when storing a value
    • 56c048bc - r600/sfn: SSBO: Fix query of dest components
    • a03db0ac - r600/sfn: Fix clip vertex output as possible stream variable
    • 99e7ada2 - r600/sfn: Fix splitting constants that come from different kcache banks.
    • a08fea0a - r600/sfn: Don't reorder outputs by location
    • 0977ef91 - r600/sfn: Fix printing ALU op without dest

    Compare with previous version

  • FYI I rebased this onto the cayman changes.

  • You should squash

    r600/sfn: RAT: don't assert for return value check when storing a value into r600/sfn: Fix RAT instruction assembly emission

    r600/sfn: SSBO: Fix query of dest components has some wierd double spaces after a comparison

    Otherwise these seem fine to land.

    Reviewed-by: Dave Airlie <airlied@redhat.com>

    • Author Developer

      I must be blind, because I don't seen any double space after a comparison in that patch; I see that I'll need to clean up the formatting at other places though, but this must wait for another patch.

    • for (unsigned i = 0; i < nir_src_num_components(instr->src[0]); ++i)

      two spaces after the < symbol. no biggie to fix later.

    • Please register or sign in to reply
  • Gert Wollny added 44 commits

    added 44 commits

    • 0977ef91...c4544f47 - 12 commits from branch mesa:master
    • 767d876f - r600/sfn: Unify semantic name and index query and use TEXCOORD semantic
    • 5527b061 - r600/sfn: Fix printing vertex fetch instruction flags
    • 78fb48e4 - r600: Lower int64 ops from TGSI-to-NIR shaders too
    • e0ecfcc4 - r600: Lower lerp after tgsi_to_nir
    • 22dfddf2 - r600: Add support for loading index register from other than chan X
    • ad937708 - r600/sfn: Handle CF index loading from non-X channel
    • 0e1c35cb - r600/sfn: rework getting a vector and uniforms from the value pool
    • f81a8234 - r600/sfn: Skip move instructions if they are only ssa and without modifiers
    • 6499c46d - r600/sfn: re-use an allocated register in lookup
    • c05b1229 - r600/sfn: skip copying LOD if the target register is is the same
    • af59c021 - r600/sfn: Fix memring print output
    • 647ccd1b - r600/sfn: Fix RING instruction assembly emission
    • 90664968 - r600/sfn: Fix GDS assembly emission
    • cda929e2 - r600/sfn: Fix RAT instruction assembly emission
    • 16b40cd8 - r600/sfn: Make allocate_reserved_registers forward to a virtual function
    • f7514136 - r600/sfn: Fix handling of output register index
    • 01dbe4cf - r600/sfn: Make 3vec loads skip possible moves
    • 80075d8b - r600/sfn: Add support for viewport index output
    • e48a93f7 - r600/sfn: Take FOGC, and backcolors into account im GS outputs
    • 46f56292 - r600/sfn: Handle loading sample_pos
    • 2dde1bfa - r600/sfn: Add FS output sample_mask
    • 876cb56a - r600/sfn: Don't reject VARYING_SLOT_PCNT
    • 3b5b996f - r600/sfn: remove pointless check
    • eebc2845 - r600/sfn: assert when alu dest is missing
    • cdfdc59b - r600/sfn: support indirect sampler buffer reads.
    • 84ff25a9 - r600/sfn: Add support for texture_samples
    • dea13adf - r600/sfn: use the per shader atomic base
    • 0213b5ad - r600/sfn: SSBO: Fix query of dest components
    • cce5ebd6 - r600/sfn: Fix clip vertex output as possible stream variable
    • ffd6d4c3 - r600/sfn: Fix splitting constants that come from different kcache banks.
    • c492aa54 - r600/sfn: Don't reorder outputs by location
    • f6f9ff76 - r600/sfn: Fix printing ALU op without dest

    Compare with previous version

  • Gert Wollny unmarked as a Work In Progress

    unmarked as a Work In Progress

  • Gert Wollny changed the description

    changed the description

  • Gert Wollny assigned to @marge-bot and unassigned @gerddie

    assigned to @marge-bot and unassigned @gerddie

  • mentioned in commit gerddie/mesa@65d8c692

  • mentioned in commit gerddie/mesa@aed9618e

  • mentioned in commit gerddie/mesa@b689de34

  • mentioned in commit gerddie/mesa@54c3d4bd

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply
Loading