[DynInst_API:] [dyninst/dyninst] 0777c2: 1. Use a new tbb::concurrent_hash_map to record bl...


Date: Tue, 16 Oct 2018 12:21:24 -0700
From: Xiaozhu Meng <xmeng@xxxxxxxxxxx>
Subject: [DynInst_API:] [dyninst/dyninst] 0777c2: 1. Use a new tbb::concurrent_hash_map to record bl...
  Branch: refs/heads/new-parallel-parsing
  Home:   https://github.com/dyninst/dyninst
  Commit: 0777c247db559a2a8d5988a2045c917829f60d7c
      https://github.com/dyninst/dyninst/commit/0777c247db559a2a8d5988a2045c917829f60d7c
  Author: Xiaozhu Meng <xmeng@xxxxxxxxxxx>
  Date:   2018-10-16 (Tue, 16 Oct 2018)

  Changed paths:
    M parseAPI/h/CFG.h
    M parseAPI/src/ParseData.C
    M parseAPI/src/ParseData.h
    M parseAPI/src/Parser.C
    M parseAPI/src/Parser.h

  Log Message:
  -----------
  1. Use a new tbb::concurrent_hash_map to record block end.
   In addition, when adding out-going edges to a block, we
   first query the block end hash map to get the accessor
   to the block. When splitting the block, we also first
   query the block end hash map to get the access to the block.
   tbb::concurrent_hash_map provides implicit read-write lock
   through the accessor. Therefore, we enforce that adding
   out-going edges are not going to be concurrent with block split.

2. Add a bunch of asserts that check edge consistency. This is
   for debug purpose and will be removed later



      **NOTE:** This service has been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.
[← Prev in Thread] Current Thread [Next in Thread→]
  • [DynInst_API:] [dyninst/dyninst] 0777c2: 1. Use a new tbb::concurrent_hash_map to record bl..., Xiaozhu Meng <=