[DynInst_API:] [dyninst/dyninst] 5185c6: Add check for stack accesses with unknown offsets.


Date: Wed, 29 Jun 2016 12:36:09 -0700
From: Matt Morehouse <mm@xxxxxxxxxxx>
Subject: [DynInst_API:] [dyninst/dyninst] 5185c6: Add check for stack accesses with unknown offsets.
  Branch: refs/heads/master
  Home:   https://github.com/dyninst/dyninst
  Commit: 5185c65cc13814c9abb48c92f3587a6f7d5b74e9
      https://github.com/dyninst/dyninst/commit/5185c65cc13814c9abb48c92f3587a6f7d5b74e9
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/src/stackanalysis.C
    M dyninstAPI/src/StackMod/StackAccess.C

  Log Message:
  -----------
  Add check for stack accesses with unknown offsets.


  Commit: e7275eb30ca28dcd7940f7dd004798f5584a7e35
      https://github.com/dyninst/dyninst/commit/e7275eb30ca28dcd7940f7dd004798f5584a7e35
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Rename aliasFunc to copyFunc.

Copying is a more accurate description of the operation that
aliasFunc has been capturing since the copied value can be modified
without changing any of the other copies.


  Commit: 8c2e36d47f6e26ad1dc6543a7135042bdff0dc38
      https://github.com/dyninst/dyninst/commit/8c2e36d47f6e26ad1dc6543a7135042bdff0dc38
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Add memory tracking for push/pop instructions.


  Commit: b78b6bfd205b7a71849b47d6027309ccf5f68add
      https://github.com/dyninst/dyninst/commit/b78b6bfd205b7a71849b47d6027309ccf5f68add
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Fix return handling and add memory tracking for leave instructions.


  Commit: 3b0e001ca0f52816507d1eeaa39a6201b4488832
      https://github.com/dyninst/dyninst/commit/3b0e001ca0f52816507d1eeaa39a6201b4488832
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Miscellaneous accumulation logic fixes.


  Commit: dbd540750d320ebac9aab932d8bfed3a4230fbb8
      https://github.com/dyninst/dyninst/commit/dbd540750d320ebac9aab932d8bfed3a4230fbb8
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/stackanalysis.C
    M dyninstAPI/src/function.C

  Log Message:
  -----------
  Add function summary capability to StackAnalysis.

A function summary is a mapping from Abslocs to TransferFuncs. Each
Absloc in the mapping represents an abstract location that is
modified by the function. Each TransferFunc in the mapping
describes how the corresponding Absloc is defined in terms of
function inputs after the function returns. This commit adds the
StackAnalysis::getFunctionSummary() method which generates and
returns function summaries for the specified function.


  Commit: a39d118d67e84ba8cb7e3c19b314f82ddfbcffee
      https://github.com/dyninst/dyninst/commit/a39d118d67e84ba8cb7e3c19b314f82ddfbcffee
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Reorganize StackAnalysis header file.

Move some implementation details to the implementation file to
avoid clutter.  Also ensure uniform indentation in both files.


  Commit: 1b2d1d53187601d7938cc62f60145a91dde82127
      https://github.com/dyninst/dyninst/commit/1b2d1d53187601d7938cc62f60145a91dde82127
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Remove sentinel values from Height and TransferFunc classes.

Use a flag to specify TOP and BOTTOM rather than MAX_LONG and
MIN_LONG.


  Commit: 56718ea8c818ba09201a87cd2e0b14ed85fd5b6d
      https://github.com/dyninst/dyninst/commit/56718ea8c818ba09201a87cd2e0b14ed85fd5b6d
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Change representation of delta functions.

Represent delta functions as "copies with deltas", where the from
and target locations are the same.  This representation simplifies
much of the accumulation logic for deltas.


  Commit: 66382aa25e6ab4a287560f917d0f34980d2af79b
      https://github.com/dyninst/dyninst/commit/66382aa25e6ab4a287560f917d0f34980d2af79b
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Improve handling of XOR.

Add memory tracking to StackAnalysis::handleXor() and replace
the default handling with more correct handling.


  Commit: a8352c9bb32815443a2d9789f395bdd6c14c873a
      https://github.com/dyninst/dyninst/commit/a8352c9bb32815443a2d9789f395bdd6c14c873a
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Remove flag tracking from StackAnalysis.


  Commit: f520de3f49adb2cb3787e0004b11755305a90b96
      https://github.com/dyninst/dyninst/commit/f520de3f49adb2cb3787e0004b11755305a90b96
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-06-29 (Wed, 29 Jun 2016)

  Changed paths:
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Track the relationship between base and subregisters.

Any modification of a base register (e.g., RAX) has a related
modification on its subregister (e.g., EAX).  The opposite is also
true.  This commit introduces functionality to track that
relationship so that modifying one register in the pair affects the
other register appropriately.


Compare: https://github.com/dyninst/dyninst/compare/0c8b2a0c8395...f520de3f49ad
[← Prev in Thread] Current Thread [Next in Thread→]
  • [DynInst_API:] [dyninst/dyninst] 5185c6: Add check for stack accesses with unknown offsets., Matt Morehouse <=