Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • D dynamorio
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,467
    • Issues 1,467
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 44
    • Merge requests 44
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • DynamoRIO
  • dynamorio
  • Issues
  • #5844
Closed
Open
Issue created Jan 31, 2023 by Assad Hashmi@AssadHashmiContributor

Add scatter/gather support for AArch64's Scalable Vector Extension (SVE)

We will shortly be upstreaming SVE scatter/gather instructions as part of AArch64 SVE codec and core/tools work (https://github.com/DynamoRIO/dynamorio/issues/5365, https://github.com/DynamoRIO/dynamorio/issues/3044). There are two aspects of this work:

  • IR and codec: new AArch64 addressing modes, an extension of the existing opnd_create_base_disp_aarch64() or a new opnd_create_base_disp_ function for SVE.
  • Core and tools: emulation of SVE scatter/gather for observing memory, similar to AVX512, see https://dynamorio.org/page_scatter_gather_emulation.html

In both cases we would like to be consistent with the design of the AVX512 IR API and emulation implementation, as much as possible. We would appreciate any advice on the best approach and the avoidance of pitfalls which you may have have encountered during your work on AVX512. As well as pointers to code which is relevant to and/or will help us with implementing for SVE.

Assignee
Assign to
Time tracking