[DynInst_API:] [dyninst/dyninst] 066598: Fix data races and asserts discovered on Power (#...


Date: Thu, 27 May 2021 13:51:39 -0700
From: noreply@xxxxxxxxxx
Subject: [DynInst_API:] [dyninst/dyninst] 066598: Fix data races and asserts discovered on Power (#...
  Branch: refs/heads/master
  Home:   https://github.com/dyninst/dyninst
  Commit: 0665983154cda40a9dcde1ef58aeced47ee03e4a
      https://github.com/dyninst/dyninst/commit/0665983154cda40a9dcde1ef58aeced47ee03e4a
  Author: Xiaozhu Meng <mxz297@xxxxxxxxx>
  Date:   2021-05-27 (Thu, 27 May 2021)

  Changed paths:
    M dataflowAPI/src/slicing.C
    M instructionAPI/src/InstructionDecoder-power.C
    M parseAPI/src/Function.C
    M parseAPI/src/Parser.C

  Log Message:
  -----------
  Fix data races and asserts discovered on Power  (#1038)

* Use thread-safe source and target edge copy methods to iterate edges during finliazation

* Use std::map::find rather than [] to avoid corruption of a power decoding table

* More fixes for parsing Power binaries:
1. convert asserts in slicing to debug logging
2. copy block edge list during finalization when determining function's block list

* Convert asserts to debug logging when setting a function's return status

These asserts indeed represent errors where parsing has gone wrong in some fashion,
but these errors are not necessarily fatal overall.


[← Prev in Thread] Current Thread [Next in Thread→]
  • [DynInst_API:] [dyninst/dyninst] 066598: Fix data races and asserts discovered on Power (#..., noreply <=