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
  • Merge requests
  • !4901

i#4899: Fix drmemtrace drreg control flow discrepancies

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Derek Bruening requested to merge i4898-drreg-skip-target into master May 11, 2021
  • Overview 6
  • Commits 3
  • Pipelines 0
  • Changes 2

Adds recording of all app-valued registers at the skip point of drmemtrace's instrumentation skips for filtered or global-maximum offline trace options. These registers are then restored prior to the skip target, to ensure scratch register parity on all paths.

Tested on the precise basic block that triggered the bug when combined with drreg limitations on which scratch registers to use. Considered trying to create a regression test out of this but there are many complexities that make it non-trivial.

Fixes #4899 (closed)

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: i4898-drreg-skip-target