This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU][NFC] Add DWARF extension support for SIMD execution
ClosedPublic

Authored by t-tye on Jan 18 2022, 9:26 AM.

Details

Summary
  • Add current iteration to the context of a DWARF expression evaluation.
  • Add DW_AT_LLVM_iterations attribute to specify the number of iterations executing concurrently.
  • Add DF_OP_LLVM_push_iteration to support optimizations that result in multiple iterations executing concurrently.
  • Add DW_OP_LLVM_overlay and DW_OP_LLVM_bit_overlay to support expressing the location of arrays that are promoted to vector registers in SIMD vectorized loops.
  • Generally clarify the difference between SIMT and SIMD execution.
  • Change the DW_AT_LLVM_active_lane attribute to take location description expression so that a loclist can be used to express different vales at different program locations.

Diff Detail

Event Timeline

t-tye created this revision.Jan 18 2022, 9:26 AM
t-tye requested review of this revision.Jan 18 2022, 9:26 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 18 2022, 9:26 AM
scott.linder accepted this revision.Jan 18 2022, 9:30 AM

LGTM, thank you!

This revision is now accepted and ready to land.Jan 18 2022, 9:30 AM
This revision was landed with ongoing or failed builds.Jan 18 2022, 9:37 AM
This revision was automatically updated to reflect the committed changes.