[DynInst_API:] [dyninst/dyninst] 23e069: Improve PIC thunk handling.


Date: Sun, 07 May 2017 09:01:20 -0700
From: Sunny Shah <shah28@xxxxxxxx>
Subject: [DynInst_API:] [dyninst/dyninst] 23e069: Improve PIC thunk handling.
  Branch: refs/heads/att_syntax
  Home:   https://github.com/dyninst/dyninst
  Commit: 23e06914110b0090354f9d1864f06bc2f3e5cb01
      https://github.com/dyninst/dyninst/commit/23e06914110b0090354f9d1864f06bc2f3e5cb01
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-10-27 (Thu, 27 Oct 2016)

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

  Log Message:
  -----------
  Improve PIC thunk handling.

Copy the PC to the target register for common thunk forms.


  Commit: 3868dcc2294ec5cecf30da516a21d3624673b51c
      https://github.com/dyninst/dyninst/commit/3868dcc2294ec5cecf30da516a21d3624673b51c
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-10-27 (Thu, 27 Oct 2016)

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

  Log Message:
  -----------
  Implement basic syscall handling in StackAnalysis.

Overwrite return registers and caller-save registers with TOP.


  Commit: a1e33a07d48e4ed43c1deb60108513f751aaef3d
      https://github.com/dyninst/dyninst/commit/a1e33a07d48e4ed43c1deb60108513f751aaef3d
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2016-10-27 (Thu, 27 Oct 2016)

  Changed paths:
    M dataflowAPI/src/stackanalysis.C

  Log Message:
  -----------
  Handle returns with arguments.


  Commit: 44c116bf1a006550b03a45d96f63e74d2de79998
      https://github.com/dyninst/dyninst/commit/44c116bf1a006550b03a45d96f63e74d2de79998
  Author: Itaru Kitayama <itaru.kitayama@xxxxxxxx>
  Date:   2017-01-19 (Thu, 19 Jan 2017)

  Changed paths:
    M stackwalk/src/linux-swk.C

  Log Message:
  -----------
  Suppress debug message when no vsyscall page was found on arm64


  Commit: 2829b8b79df16b40a6a1aab71f6af0c7a9c96e0f
      https://github.com/dyninst/dyninst/commit/2829b8b79df16b40a6a1aab71f6af0c7a9c96e0f
  Author: Itaru Kitayama <itaru.kitayama@xxxxxxxx>
  Date:   2017-01-19 (Thu, 19 Jan 2017)

  Changed paths:
    M dyninstAPI/src/linux-aarch64.C

  Log Message:
  -----------
  getOPDFunctionAddr() should always return a true value on arm64


  Commit: e59c06bad4172a0d9083586e53504739e648aeaf
      https://github.com/dyninst/dyninst/commit/e59c06bad4172a0d9083586e53504739e648aeaf
  Author: Itaru Kitayama <itaru.kitayama@xxxxxxxx>
  Date:   2017-01-27 (Fri, 27 Jan 2017)

  Changed paths:
    M dataflowAPI/src/liveness.C

  Log Message:
  -----------
  Use ifdef to guard x86 code


  Commit: 64a18e567a23be4765bf7c8cb38b21284180ad1a
      https://github.com/dyninst/dyninst/commit/64a18e567a23be4765bf7c8cb38b21284180ad1a
  Author: Itaru Kitayama <itaru.kitayama@xxxxxxxx>
  Date:   2017-01-30 (Mon, 30 Jan 2017)

  Changed paths:
    M dataflowAPI/src/RegisterMap.C

  Log Message:
  -----------
  Add a mapping of AArch64 MachRegister to index for Linux


  Commit: 718b49a83766d7887848fa717c710747d52dcaa5
      https://github.com/dyninst/dyninst/commit/718b49a83766d7887848fa717c710747d52dcaa5
  Author: Itaru Kitayama <itaru.kitayama@xxxxxxxx>
  Date:   2017-02-01 (Wed, 01 Feb 2017)

  Changed paths:
    M dyninstAPI/src/codegen.C

  Log Message:
  -----------
  arm64: set number of regs defined in beginTrackRegDefs()


  Commit: a101706d261e99de01deb537ded6ef8d70802889
      https://github.com/dyninst/dyninst/commit/a101706d261e99de01deb537ded6ef8d70802889
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-02-07 (Tue, 07 Feb 2017)

  Changed paths:
    M common/h/IBSTree-fast.h

  Log Message:
  -----------
  Remove dead code and inappropriate use of auto in public headers


  Commit: f76bc90cdf9d77c2b6dd305d4b3ebc8c62e3c917
      https://github.com/dyninst/dyninst/commit/f76bc90cdf9d77c2b6dd305d4b3ebc8c62e3c917
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2017-02-08 (Wed, 08 Feb 2017)

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

  Log Message:
  -----------
  Conservative fix for the stack pointer passing problem.

If stack pointers may be passed as parameters to a callee, avoid
instrumenting the caller.  Doing so may result in the pointers not
being adjusted correctly for usage in the callee.  Check pointers
in all registers designated as parameter registers in the ABI, as
well as the last 7 stack slots.


  Commit: 8f135d1efe8785824d1496212e4ce2a5563f886a
      https://github.com/dyninst/dyninst/commit/8f135d1efe8785824d1496212e4ce2a5563f886a
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-02-09 (Thu, 09 Feb 2017)

  Changed paths:
    M cmake/Modules/FindLibElf.cmake
    M cmake/packages.cmake

  Log Message:
  -----------
  Explicitly search for libelf.so.1, as libelf.so.0 is no longer supported.

Only build libelf from elfutils; their dwarf.h and libdwarf's dwarf.h appear to conflict.


  Commit: 90428219d139bbc8256fcdee906e6fa2cdf42f7b
      https://github.com/dyninst/dyninst/commit/90428219d139bbc8256fcdee906e6fa2cdf42f7b
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-02-09 (Thu, 09 Feb 2017)

  Changed paths:
    M .travis.yml

  Log Message:
  -----------
  Use elfutils-dev package for travis, so that we don't have to build from scratch--CLang can't manage it out of the box.


  Commit: c71015cbd0864ea752d55fe61ec63073f72533ac
      https://github.com/dyninst/dyninst/commit/c71015cbd0864ea752d55fe61ec63073f72533ac
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-02-14 (Tue, 14 Feb 2017)

  Changed paths:
    M .travis.yml
    M cmake/Modules/FindLibElf.cmake
    M cmake/packages.cmake
    M common/h/IBSTree-fast.h

  Log Message:
  -----------
  Merge pull request #323 from dyninst/wrwilliams/cleanup_for_9_3_1

Fixes for API and dependency issues in 9.3.0


  Commit: eae6980c1d77f12f83b41895898f555b22a86a8e
      https://github.com/dyninst/dyninst/commit/eae6980c1d77f12f83b41895898f555b22a86a8e
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-02-14 (Tue, 14 Feb 2017)

  Changed paths:
    M parseAPI/src/BoundFactCalculator.C

  Log Message:
  -----------
  Fix memory leaks in indirect control flow.


  Commit: 9de30aa8b6ff7b518c354667e9f0f835ac5b32f2
      https://github.com/dyninst/dyninst/commit/9de30aa8b6ff7b518c354667e9f0f835ac5b32f2
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-02-14 (Tue, 14 Feb 2017)

  Changed paths:
    M parseAPI/src/BoundFactCalculator.C

  Log Message:
  -----------
  Merge pull request #329 from dyninst/wrwilliams/icf_leaks

Fix memory leaks in indirect control flow.


  Commit: 4de990793653f8f2f8125e4d12ef86d8d8c721ac
      https://github.com/dyninst/dyninst/commit/4de990793653f8f2f8125e4d12ef86d8d8c721ac
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-02-15 (Wed, 15 Feb 2017)

  Changed paths:
    M dataflowAPI/src/RegisterMap.C
    M dataflowAPI/src/liveness.C
    M dyninstAPI/src/codegen.C

  Log Message:
  -----------
  Merge branch 'for-bill' of https://github.com/ikitayama/dyninst into itaru/x86_ifdefs


  Commit: 332540d3fa1947c49ea07d21ad16454bd6c49e6f
      https://github.com/dyninst/dyninst/commit/332540d3fa1947c49ea07d21ad16454bd6c49e6f
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-02-15 (Wed, 15 Feb 2017)

  Changed paths:
    M dyninstAPI/src/linux-aarch64.C
    M stackwalk/src/linux-swk.C

  Log Message:
  -----------
  Merge branch 'dev' of https://github.com/ikitayama/dyninst into itaru/dev


  Commit: 87f7acf88cc316325e1154620f562ae804c74958
      https://github.com/dyninst/dyninst/commit/87f7acf88cc316325e1154620f562ae804c74958
  Author: Peter Foley <pefoley2@xxxxxxxxxxx>
  Date:   2017-02-15 (Wed, 15 Feb 2017)

  Changed paths:
    M symtabAPI/src/Collections.C
    M symtabAPI/src/Type.C

  Log Message:
  -----------
  fix memory leaks


  Commit: f3e45ea8b890cc528ca8734a849f58b30f7a77a1
      https://github.com/dyninst/dyninst/commit/f3e45ea8b890cc528ca8734a849f58b30f7a77a1
  Author: Peter Foley <pefoley2@xxxxxxxxxxx>
  Date:   2017-02-15 (Wed, 15 Feb 2017)

  Changed paths:
    M dyninstAPI/src/BPatch.C
    M dyninstAPI/src/BPatch_type.C
    M symtabAPI/src/Type.C

  Log Message:
  -----------
  fix more leaks


  Commit: 5964e9505e7d2e54298507c9285974a8c9d36367
      https://github.com/dyninst/dyninst/commit/5964e9505e7d2e54298507c9285974a8c9d36367
  Author: Peter Foley <pefoley2@xxxxxxxxxxx>
  Date:   2017-02-15 (Wed, 15 Feb 2017)

  Changed paths:
    M dyninstAPI/h/BPatch_type.h
    M dyninstAPI/src/BPatch.C
    M dyninstAPI/src/BPatch_collections.C
    M dyninstAPI/src/BPatch_type.C

  Log Message:
  -----------
  more leak fixes


  Commit: e92be894c0b7fa770396aed5e964065337715a8b
      https://github.com/dyninst/dyninst/commit/e92be894c0b7fa770396aed5e964065337715a8b
  Author: Peter Foley <pefoley2@xxxxxxxxxxx>
  Date:   2017-02-15 (Wed, 15 Feb 2017)

  Changed paths:
    M common/src/addrtranslate-sysv.C
    M dyninstAPI/src/image.C

  Log Message:
  -----------
  more leaks


  Commit: dd63cd5879a8173fe03b8a4222ce4987783f2580
      https://github.com/dyninst/dyninst/commit/dd63cd5879a8173fe03b8a4222ce4987783f2580
  Author: mneumann <mneumann@xxxxxxxx>
  Date:   2017-02-16 (Thu, 16 Feb 2017)

  Changed paths:
    M symtabAPI/src/dwarfWalker.C

  Log Message:
  -----------
  Enable parsing of members without location information (implicitely 0) in unions


  Commit: db4163808fc6da56adff4ccf10c71f16ebfdf57f
      https://github.com/dyninst/dyninst/commit/db4163808fc6da56adff4ccf10c71f16ebfdf57f
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-02-16 (Thu, 16 Feb 2017)

  Changed paths:
    M common/src/addrtranslate-sysv.C
    M dyninstAPI/h/BPatch_type.h
    M dyninstAPI/src/BPatch.C
    M dyninstAPI/src/BPatch_collections.C
    M dyninstAPI/src/BPatch_type.C
    M dyninstAPI/src/image.C
    M symtabAPI/src/Collections.C
    M symtabAPI/src/Type.C

  Log Message:
  -----------
  Merge pull request #333 from dyninst/leaks-for-9.3

Fix memory leaks found with lsan


  Commit: 3c9b75855e2d5ee7ae5972523fb24ccf6bef0b4f
      https://github.com/dyninst/dyninst/commit/3c9b75855e2d5ee7ae5972523fb24ccf6bef0b4f
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-02-16 (Thu, 16 Feb 2017)

  Changed paths:
    M dyninstAPI/src/linux-aarch64.C
    M stackwalk/src/linux-swk.C

  Log Message:
  -----------
  Merge pull request #332 from dyninst/itaru/dev

Suppress debug message when no vsyscall page was found on arm64


  Commit: 3a402c4df18adf72543d810ba0d7866dba6984cd
      https://github.com/dyninst/dyninst/commit/3a402c4df18adf72543d810ba0d7866dba6984cd
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-02-16 (Thu, 16 Feb 2017)

  Changed paths:
    M dataflowAPI/src/RegisterMap.C
    M dataflowAPI/src/liveness.C
    M dyninstAPI/src/codegen.C

  Log Message:
  -----------
  Merge pull request #331 from dyninst/itaru/x86_ifdefs

Use ifdef to guard x86 code


  Commit: 0c64d68426dc00fe66aa625e046d8cbec5cafdfe
      https://github.com/dyninst/dyninst/commit/0c64d68426dc00fe66aa625e046d8cbec5cafdfe
  Author: mneumann <mneumann@xxxxxxxx>
  Date:   2017-02-17 (Fri, 17 Feb 2017)

  Changed paths:
    M symtabAPI/src/dwarfWalker.C

  Log Message:
  -----------
  Use an explicit name for anonymous unions, structs and classes


  Commit: d3fa4d831dd12a84a5a6ce678d5d5195bacf13b8
      https://github.com/dyninst/dyninst/commit/d3fa4d831dd12a84a5a6ce678d5d5195bacf13b8
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-02-20 (Mon, 20 Feb 2017)

  Changed paths:
    M symtabAPI/src/dwarfWalker.C

  Log Message:
  -----------
  Merge pull request #335 from teco-kit/master

Better handling of anonymous structs and unions


  Commit: 73c3bb0999f0e5afe44bc70d0fbb16ea9d42b3dc
      https://github.com/dyninst/dyninst/commit/73c3bb0999f0e5afe44bc70d0fbb16ea9d42b3dc
  Author: Xiaozhu Meng <xmeng@xxxxxxxxxxx>
  Date:   2017-02-23 (Thu, 23 Feb 2017)

  Changed paths:
    M parseAPI/src/BoundFactData.C
    M parseAPI/src/IndirectASTVisitor.C

  Log Message:
  -----------
  A memory access to a known address should be considered as a variable, rather than a table read.
So, the jump table analysis should not try to read the content of the variable, but try to determine whether the variable is bounded


  Commit: 54f1b1e16064332983f0a35db58bd5a0234925ad
      https://github.com/dyninst/dyninst/commit/54f1b1e16064332983f0a35db58bd5a0234925ad
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-02-24 (Fri, 24 Feb 2017)

  Changed paths:
    M parseAPI/src/BoundFactData.C
    M parseAPI/src/IndirectASTVisitor.C

  Log Message:
  -----------
  Merge pull request #338 from dyninst/meng/lulesh-fix

Fix jump table analysis for lulesh


  Commit: 266352fafdf760ede18de0b50e9b4d60f5c79ee7
      https://github.com/dyninst/dyninst/commit/266352fafdf760ede18de0b50e9b4d60f5c79ee7
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-03-02 (Thu, 02 Mar 2017)

  Changed paths:
    M symtabAPI/h/Symtab.h
    M symtabAPI/src/Aggregate.C
    M symtabAPI/src/Module.C
    M symtabAPI/src/Object-elf.C
    M symtabAPI/src/dwarfWalker.C

  Log Message:
  -----------
  Replaced a bunch of asserts with graceful error handling.


  Commit: 4870cd174539e36dda11f034c821c6ab25bd10d4
      https://github.com/dyninst/dyninst/commit/4870cd174539e36dda11f034c821c6ab25bd10d4
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-03-02 (Thu, 02 Mar 2017)

  Changed paths:
    M symtabAPI/h/Symtab.h
    M symtabAPI/src/Aggregate.C
    M symtabAPI/src/Module.C
    M symtabAPI/src/Object-elf.C
    M symtabAPI/src/dwarfWalker.C

  Log Message:
  -----------
  Merge pull request #340 from dyninst/wrwilliams/symtab-asserts

Replaced a bunch of asserts with graceful error handling.


  Commit: 334d753c440590d4a4fca2ac617b208ce52af954
      https://github.com/dyninst/dyninst/commit/334d753c440590d4a4fca2ac617b208ce52af954
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-03-02 (Thu, 02 Mar 2017)

  Changed paths:
    A CHANGELOG.md
    M cmake/shared.cmake

  Log Message:
  -----------
  Increment version and add changelog for 9.3.1


  Commit: 3cddbd206a3384765f2aad15fa07ccd0b0944c7f
      https://github.com/dyninst/dyninst/commit/3cddbd206a3384765f2aad15fa07ccd0b0944c7f
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-03-02 (Thu, 02 Mar 2017)

  Changed paths:
    M CHANGELOG.md

  Log Message:
  -----------
  Brought issues up to date and updated changelog accordingly.


  Commit: aa58c29bb11e8a53f5eda999497d1f18810390dc
      https://github.com/dyninst/dyninst/commit/aa58c29bb11e8a53f5eda999497d1f18810390dc
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-03-02 (Thu, 02 Mar 2017)

  Changed paths:
    M .travis.yml
    A CHANGELOG.md
    M cmake/Modules/FindLibElf.cmake
    M cmake/packages.cmake
    M cmake/shared.cmake
    M common/h/IBSTree-fast.h
    M common/src/addrtranslate-sysv.C
    M dataflowAPI/src/RegisterMap.C
    M dataflowAPI/src/liveness.C
    M dyninstAPI/h/BPatch_type.h
    M dyninstAPI/src/BPatch.C
    M dyninstAPI/src/BPatch_collections.C
    M dyninstAPI/src/BPatch_type.C
    M dyninstAPI/src/codegen.C
    M dyninstAPI/src/image.C
    M dyninstAPI/src/linux-aarch64.C
    M parseAPI/src/BoundFactCalculator.C
    M parseAPI/src/BoundFactData.C
    M parseAPI/src/IndirectASTVisitor.C
    M stackwalk/src/linux-swk.C
    M symtabAPI/h/Symtab.h
    M symtabAPI/src/Aggregate.C
    M symtabAPI/src/Collections.C
    M symtabAPI/src/Module.C
    M symtabAPI/src/Object-elf.C
    M symtabAPI/src/Type.C
    M symtabAPI/src/dwarfWalker.C

  Log Message:
  -----------
  Merge pull request #341 from dyninst/v9.3.x

v9.3.x


  Commit: 692109d97aec8cd7aa5e2e5681ec4c8b3edb5b5b
      https://github.com/dyninst/dyninst/commit/692109d97aec8cd7aa5e2e5681ec4c8b3edb5b5b
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-03-14 (Tue, 14 Mar 2017)

  Changed paths:
    R LGPL
    A LICENSE.md

  Log Message:
  -----------
  Update and rename LGPL to LICENSE.md


  Commit: ba05f95f55cebdcb2578bb0eda79bd7adf9b9839
      https://github.com/dyninst/dyninst/commit/ba05f95f55cebdcb2578bb0eda79bd7adf9b9839
  Author: Josh Stone <jistone@xxxxxxxxxx>
  Date:   2017-03-14 (Tue, 14 Mar 2017)

  Changed paths:
    M cmake/packages.cmake

  Log Message:
  -----------
  Pass CFLAGS to libdwarf and libiberty


  Commit: 3739826e16b8515eaa51240a9f1851517aab38d1
      https://github.com/dyninst/dyninst/commit/3739826e16b8515eaa51240a9f1851517aab38d1
  Author: Bill Williams <bill@xxxxxxxxxxx>
  Date:   2017-03-14 (Tue, 14 Mar 2017)

  Changed paths:
    M common/h/dyntypes.h
    M common/src/Types.h
    M dyninstAPI/h/BPatch_instruction.h
    M dyninstAPI/h/BPatch_memoryAccess_NP.h
    M dyninstAPI/src/BPatch_memoryAccess.C
    M dyninstAPI/src/Relocation/Transformers/Movement-analysis.C

  Log Message:
  -----------
  ABI fixes for 9.3.1 from scox@xxxxxxxxx


  Commit: b1bdfb71528d5d8a817f0bad3742d487364fd75e
      https://github.com/dyninst/dyninst/commit/b1bdfb71528d5d8a817f0bad3742d487364fd75e
  Author: Bill Williams <wwilliam47@xxxxxxxxx>
  Date:   2017-03-17 (Fri, 17 Mar 2017)

  Changed paths:
    M cmake/packages.cmake
    M common/h/dyntypes.h
    M common/src/Types.h
    M dyninstAPI/h/BPatch_instruction.h
    M dyninstAPI/h/BPatch_memoryAccess_NP.h
    M dyninstAPI/src/BPatch_memoryAccess.C
    M dyninstAPI/src/Relocation/Transformers/Movement-analysis.C

  Log Message:
  -----------
  Merge pull request #350 from dyninst/jistone/build32

Support 32-bit builds in Jenkins


  Commit: add39de2369bcf1943e799a5839d36c050ea16b1
      https://github.com/dyninst/dyninst/commit/add39de2369bcf1943e799a5839d36c050ea16b1
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2017-04-19 (Wed, 19 Apr 2017)

  Changed paths:
    M dyninstAPI/src/Relocation/CFG/RelocBlock.C
    M dyninstAPI/src/Relocation/CFG/RelocGraph.C

  Log Message:
  -----------
  Fix relocation of tail calls.

Interprocedural jumps weren't being marked as interprocedural. This
commit fixes that.


  Commit: e45b32388e03cfdac6412bb8dd42b025abc765b5
      https://github.com/dyninst/dyninst/commit/e45b32388e03cfdac6412bb8dd42b025abc765b5
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2017-04-19 (Wed, 19 Apr 2017)

  Changed paths:
    M dyninstAPI/src/Relocation/CodeBuffer.C

  Log Message:
  -----------
  Update commented-out debug print statements.

After some refactoring to remove "using namespace std", some of the
commented-out debug statements no longer worked when uncommenting
them.  This commit updates those debug statements.


  Commit: 5a3ee162162db902c978df07e2bf07fe0dd1aa6c
      https://github.com/dyninst/dyninst/commit/5a3ee162162db902c978df07e2bf07fe0dd1aa6c
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2017-04-19 (Wed, 19 Apr 2017)

  Changed paths:
    M dyninstAPI/src/Relocation/Transformers/Movement-analysis.C

  Log Message:
  -----------
  Apply Bill's fixes for exception-sensitivity checking.


  Commit: c70639210310ccfe656d9a89992f0f473b7dddb8
      https://github.com/dyninst/dyninst/commit/c70639210310ccfe656d9a89992f0f473b7dddb8
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2017-04-19 (Wed, 19 Apr 2017)

  Changed paths:
    M dyninstAPI/src/codegen-x86.C

  Log Message:
  -----------
  Fix incorrect relocation of certain floating-point instructions.


  Commit: 5191cab7d95fd2b49b2228c20c05bbd1b41e2020
      https://github.com/dyninst/dyninst/commit/5191cab7d95fd2b49b2228c20c05bbd1b41e2020
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2017-04-20 (Thu, 20 Apr 2017)

  Changed paths:
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/stackanalysis.C
    M dyninstAPI/src/Relocation/Transformers/Movement-adhoc.C
    M dyninstAPI/src/Relocation/Transformers/Movement-adhoc.h
    M dyninstAPI/src/StackMod/StackAccess.C
    M dyninstAPI/src/StackMod/StackAccess.h
    M dyninstAPI/src/StackMod/StackModChecker.C
    M dyninstAPI/src/codegen-x86.C
    M dyninstAPI/src/function.C
    M dyninstAPI/src/function.h

  Log Message:
  -----------
  Add reaching definitions analysis to StackAnalysis.

The reaching definitions analysis keeps track of where stack
pointers are defined so that StackMod can modify those definitions
if necessary.  StackMod currently modifies definitions only when
there are multiple possible stack slots a pointer could point to
and then that pointer is dereferenced.  In that scenario, we cannot
modify just the access since we would need to have two different
displacements depending on the value of the pointer.  Instead,
StackMod modifies the pointers at their definition points so that
they point to their new stack locations.


  Commit: da77922e3f1ce0c7a86808ec76742293650d7205
      https://github.com/dyninst/dyninst/commit/da77922e3f1ce0c7a86808ec76742293650d7205
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2017-04-20 (Thu, 20 Apr 2017)

  Changed paths:
    M dyninstAPI/src/BPatch_object.C

  Log Message:
  -----------
  Hard-code function summary for __libc_memalign.

Doing this allows the malloc function summary to not bottom RAX.


  Commit: 14e9419563b50f1a7391b32aa830a934c5f5643c
      https://github.com/dyninst/dyninst/commit/14e9419563b50f1a7391b32aa830a934c5f5643c
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2017-04-20 (Thu, 20 Apr 2017)

  Changed paths:
    M .gitignore
    A .idea/deployment.xml
    A .idea/webServers.xml
    M CMakeLists.txt
    M README.md
    M appveyor.yml
    M cmake/optimization.cmake
    M cmake/packages.cmake
    M cmake/shared.cmake
    M cmake/warnings.cmake
    M common/CMakeLists.txt
    M common/doc/manual_frontpage.tex
    M common/h/IBSTree-fast.h
    M common/h/IBSTree.h
    M common/h/SymReader.h
    M common/h/dyn_regs.h
    M common/h/dyntypes.h
    M common/src/Types.h
    M common/src/debug_common.h
    M common/src/dyn_regs.C
    M common/src/linuxKludges.C
    M dataflowAPI/doc/dataflowAPI.pdf
    M dataflowAPI/h/ABI.h
    M dataflowAPI/h/Absloc.h
    M dataflowAPI/h/AbslocInterface.h
    M dataflowAPI/h/SymEval.h
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/rose/semantics/BaseSemantics2.C
    M dataflowAPI/rose/semantics/BaseSemantics2.h
    M dataflowAPI/rose/semantics/DispatcherARM64.C
    M dataflowAPI/rose/semantics/DispatcherARM64.h
    M dataflowAPI/rose/semantics/Registers.C
    M dataflowAPI/rose/semantics/SymEvalSemantics.C
    M dataflowAPI/rose/semantics/SymEvalSemantics.h
    M dataflowAPI/rose/x86_64InstructionSemantics.h
    M dataflowAPI/src/ABI.C
    M dataflowAPI/src/Absloc.C
    M dataflowAPI/src/AbslocInterface.C
    M dataflowAPI/src/ExpressionConversionVisitor.C
    M dataflowAPI/src/RoseImpl.C
    M dataflowAPI/src/SymEvalPolicy.C
    M dataflowAPI/src/SymbolicExpansion.C
    M dataflowAPI/src/slicing.C
    M dataflowAPI/src/stackanalysis.C
    M dynC_API/CMakeLists.txt
    M dynC_API/src/C.l
    M dynC_API/src/C.y
    M dynC_API/src/dynC.tab.C
    M dynC_API/src/dynC.tab.h
    M dynC_API/src/lex.dynC.C
    M dyninstAPI/CMakeLists.txt
    M dyninstAPI/doc/dyninstAPI.doc
    M dyninstAPI/doc/dyninstAPI.pdf
    M dyninstAPI/h/BPatch_addressSpace.h
    M dyninstAPI/h/BPatch_image.h
    M dyninstAPI/h/BPatch_instruction.h
    M dyninstAPI/h/BPatch_memoryAccess_NP.h
    M dyninstAPI/h/BPatch_module.h
    M dyninstAPI/h/BPatch_snippet.h
    M dyninstAPI/h/BPatch_statement.h
    M dyninstAPI/src/BPatch_addressSpace.C
    M dyninstAPI/src/BPatch_image.C
    M dyninstAPI/src/BPatch_module.C
    M dyninstAPI/src/BPatch_object.C
    M dyninstAPI/src/BPatch_snippet.C
    M dyninstAPI/src/BPatch_statement.C
    M dyninstAPI/src/BPatch_type.C
    M dyninstAPI/src/MemoryEmulator/memEmulatorTransformer.h
    M dyninstAPI/src/Relocation/CFG/RelocBlock.C
    M dyninstAPI/src/Relocation/CFG/RelocGraph.C
    M dyninstAPI/src/Relocation/CodeBuffer.C
    M dyninstAPI/src/Relocation/CodeTracker.C
    M dyninstAPI/src/Relocation/CodeTracker.h
    M dyninstAPI/src/Relocation/Transformers/Movement-adhoc.C
    M dyninstAPI/src/Relocation/Transformers/Movement-adhoc.h
    M dyninstAPI/src/Relocation/Transformers/Movement-analysis.C
    M dyninstAPI/src/Relocation/Transformers/Movement-analysis.h
    M dyninstAPI/src/Relocation/Widgets/StackModWidget.C
    M dyninstAPI/src/StackMod/StackAccess.C
    M dyninstAPI/src/StackMod/StackAccess.h
    M dyninstAPI/src/StackMod/StackModChecker.C
    M dyninstAPI/src/addressSpace.h
    M dyninstAPI/src/binaryEdit.C
    M dyninstAPI/src/binaryEdit.h
    M dyninstAPI/src/codegen-x86.C
    M dyninstAPI/src/dynProcess.h
    M dyninstAPI/src/function.C
    M dyninstAPI/src/function.h
    M dyninstAPI/src/hybridCallbacks.C
    M dyninstAPI/src/hybridOverwrites.C
    M dyninstAPI/src/image.C
    M dyninstAPI/src/inst-power.C
    M dyninstAPI/src/inst-x86.C
    M dyninstAPI/src/linux.C
    M dyninstAPI/src/pdwinnt.C
    M dyninstAPI/src/unix.C
    M dyninstAPI_RT/src/RTheap.c
    M dyninstAPI_RT/src/RTthread-x86.c
    M dyninstAPI_RT/src/RTwinnt.c
    M elf/h/Elf_X.h
    M elf/src/Elf_X.C
    M external/rose/armv8InstructionEnum.h
    M instructionAPI/CMakeLists.txt
    M instructionAPI/doc/1-Intro.tex
    M instructionAPI/doc/instructionAPI.pdf
    M instructionAPI/src/InstructionDecoder-aarch64.C
    M parseAPI/CMakeLists.txt
    M parseAPI/doc/1-Intro.tex
    M parseAPI/doc/parseAPI.pdf
    M parseAPI/h/CFG.h
    M parseAPI/h/CFGFactory.h
    M parseAPI/h/CodeSource.h
    M parseAPI/src/Block.C
    M parseAPI/src/BoundFactCalculator.C
    M parseAPI/src/BoundFactData.C
    M parseAPI/src/BoundFactData.h
    M parseAPI/src/CodeObject.C
    M parseAPI/src/Function.C
    M parseAPI/src/IA_IAPI.C
    M parseAPI/src/IA_aarch64.C
    M parseAPI/src/IA_power.C
    M parseAPI/src/IA_powerDetails.C
    M parseAPI/src/IndirectASTVisitor.C
    M parseAPI/src/IndirectASTVisitor.h
    M parseAPI/src/IndirectAnalyzer.C
    M parseAPI/src/InstructionSource-aarch64.C
    M parseAPI/src/JumpTablePred.C
    M parseAPI/src/JumpTablePred.h
    M parseAPI/src/SymLiteCodeSource.C
    M parseAPI/src/SymtabCodeSource.C
    M parseAPI/src/debug_parse.C
    M parseAPI/src/debug_parse.h
    M parseThat/src/dyninstCore.C
    M patchAPI/doc/patchAPI.pdf
    M proccontrol/CMakeLists.txt
    M proccontrol/doc/proccontrol.docx
    M proccontrol/doc/proccontrol.pdf
    M proccontrol/src/DecoderWindows.C
    M proccontrol/src/int_process.h
    M proccontrol/src/linux.C
    M proccontrol/src/linux.h
    M proccontrol/src/process.C
    M proccontrol/src/windows_thread.C
    M stackwalk/doc/3-API.tex
    M stackwalk/doc/stackwalk.pdf
    M stackwalk/src/aarch64-swk.C
    M stackwalk/src/linux-swk.C
    M stackwalk/src/x86-swk.C
    M symlite/h/SymLite-elf.h
    M symlite/src/SymLite-elf.C
    M symtabAPI/CMakeLists.txt
    M symtabAPI/doc/1-Intro.tex
    M symtabAPI/doc/2-Abstractions.tex
    M symtabAPI/doc/API/LineInfo/Iterating.tex
    M symtabAPI/doc/symtabAPI.pdf
    M symtabAPI/h/Function.h
    M symtabAPI/h/LineInformation.h
    M symtabAPI/h/Module.h
    M symtabAPI/h/RangeLookup.h
    A symtabAPI/h/StringTable.h
    M symtabAPI/h/Symtab.h
    M symtabAPI/h/SymtabReader.h
    M symtabAPI/src/Function.C
    M symtabAPI/src/LineInformation.C
    M symtabAPI/src/Module.C
    M symtabAPI/src/Object-elf.C
    M symtabAPI/src/Object-elf.h
    M symtabAPI/src/Object-nt.C
    M symtabAPI/src/Object-nt.h
    M symtabAPI/src/Object.C
    M symtabAPI/src/Object.h
    M symtabAPI/src/Symtab-edit.C
    M symtabAPI/src/Symtab-lookup.C
    M symtabAPI/src/Symtab.C
    M symtabAPI/src/SymtabReader.C
    M symtabAPI/src/dwarfWalker.C
    M symtabAPI/src/dwarfWalker.h
    M symtabAPI/src/emitElf.C
    M symtabAPI/src/relocationEntry-elf-aarch64.C

  Log Message:
  -----------
  Merge branch 'sfm/fixes/conservative_pointer_passing' into sfm/feature/reaching_defs

Conflicts:
	dataflowAPI/src/stackanalysis.C


  Commit: 435b1886a0fda7037149c61a9f6dc39d36eea67e
      https://github.com/dyninst/dyninst/commit/435b1886a0fda7037149c61a9f6dc39d36eea67e
  Author: Matt Morehouse <mm@xxxxxxxxxxx>
  Date:   2017-04-21 (Fri, 21 Apr 2017)

  Changed paths:
    M .travis.yml
    A CHANGELOG.md
    R LGPL
    A LICENSE.md
    M cmake/Modules/FindLibElf.cmake
    M cmake/packages.cmake
    M cmake/shared.cmake
    M common/h/IBSTree-fast.h
    M common/h/dyntypes.h
    M common/src/Types.h
    M common/src/addrtranslate-sysv.C
    M dataflowAPI/src/RegisterMap.C
    M dataflowAPI/src/liveness.C
    M dyninstAPI/h/BPatch_instruction.h
    M dyninstAPI/h/BPatch_memoryAccess_NP.h
    M dyninstAPI/h/BPatch_type.h
    M dyninstAPI/src/BPatch.C
    M dyninstAPI/src/BPatch_collections.C
    M dyninstAPI/src/BPatch_memoryAccess.C
    M dyninstAPI/src/BPatch_type.C
    M dyninstAPI/src/Relocation/Transformers/Movement-analysis.C
    M dyninstAPI/src/codegen.C
    M dyninstAPI/src/image.C
    M dyninstAPI/src/linux-aarch64.C
    M parseAPI/src/BoundFactCalculator.C
    M parseAPI/src/BoundFactData.C
    M parseAPI/src/IndirectASTVisitor.C
    M stackwalk/src/linux-swk.C
    M symtabAPI/h/Symtab.h
    M symtabAPI/src/Aggregate.C
    M symtabAPI/src/Collections.C
    M symtabAPI/src/Module.C
    M symtabAPI/src/Object-elf.C
    M symtabAPI/src/Type.C
    M symtabAPI/src/dwarfWalker.C

  Log Message:
  -----------
  Merge branch 'master' of https://github.com/dyninst/dyninst into sfm/feature/reaching_defs

Conflicts:
	dyninstAPI/src/Relocation/Transformers/Movement-analysis.C


  Commit: 39a3bd8017246c0f985b23d140df804c05b7e9bc
      https://github.com/dyninst/dyninst/commit/39a3bd8017246c0f985b23d140df804c05b7e9bc
  Author: morehouse <mm@xxxxxxxxxxx>
  Date:   2017-04-24 (Mon, 24 Apr 2017)

  Changed paths:
    M dataflowAPI/h/ABI.h
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/ABI.C
    M dataflowAPI/src/stackanalysis.C
    M dyninstAPI/src/BPatch_object.C
    M dyninstAPI/src/Relocation/CFG/RelocBlock.C
    M dyninstAPI/src/Relocation/CFG/RelocGraph.C
    M dyninstAPI/src/Relocation/CodeBuffer.C
    M dyninstAPI/src/Relocation/Transformers/Movement-adhoc.C
    M dyninstAPI/src/Relocation/Transformers/Movement-adhoc.h
    M dyninstAPI/src/Relocation/Transformers/Movement-analysis.C
    M dyninstAPI/src/StackMod/StackAccess.C
    M dyninstAPI/src/StackMod/StackAccess.h
    M dyninstAPI/src/StackMod/StackModChecker.C
    M dyninstAPI/src/codegen-x86.C
    M dyninstAPI/src/function.C
    M dyninstAPI/src/function.h

  Log Message:
  -----------
  Merge pull request #364 from dyninst/sfm/feature/reaching_defs

Sfm/feature/reaching defs


  Commit: c10d781fd967b0ac10ab5a65258fe91043c42343
      https://github.com/dyninst/dyninst/commit/c10d781fd967b0ac10ab5a65258fe91043c42343
  Author: Sunny Shah <shah28@xxxxxxxx>
  Date:   2017-05-05 (Fri, 05 May 2017)

  Changed paths:
    M .travis.yml
    A CHANGELOG.md
    R LGPL
    A LICENSE.md
    M cmake/Modules/FindLibElf.cmake
    M cmake/packages.cmake
    M cmake/shared.cmake
    M common/h/IBSTree-fast.h
    M common/h/dyntypes.h
    M common/src/Types.h
    M common/src/addrtranslate-sysv.C
    M dataflowAPI/h/ABI.h
    M dataflowAPI/h/stackanalysis.h
    M dataflowAPI/src/ABI.C
    M dataflowAPI/src/RegisterMap.C
    M dataflowAPI/src/liveness.C
    M dataflowAPI/src/stackanalysis.C
    M dyninstAPI/h/BPatch_instruction.h
    M dyninstAPI/h/BPatch_memoryAccess_NP.h
    M dyninstAPI/h/BPatch_type.h
    M dyninstAPI/src/BPatch.C
    M dyninstAPI/src/BPatch_collections.C
    M dyninstAPI/src/BPatch_memoryAccess.C
    M dyninstAPI/src/BPatch_object.C
    M dyninstAPI/src/BPatch_type.C
    M dyninstAPI/src/Relocation/CFG/RelocBlock.C
    M dyninstAPI/src/Relocation/CFG/RelocGraph.C
    M dyninstAPI/src/Relocation/CodeBuffer.C
    M dyninstAPI/src/Relocation/Transformers/Movement-adhoc.C
    M dyninstAPI/src/Relocation/Transformers/Movement-adhoc.h
    M dyninstAPI/src/Relocation/Transformers/Movement-analysis.C
    M dyninstAPI/src/StackMod/StackAccess.C
    M dyninstAPI/src/StackMod/StackAccess.h
    M dyninstAPI/src/StackMod/StackModChecker.C
    M dyninstAPI/src/codegen-x86.C
    M dyninstAPI/src/codegen.C
    M dyninstAPI/src/function.C
    M dyninstAPI/src/function.h
    M dyninstAPI/src/image.C
    M dyninstAPI/src/linux-aarch64.C
    M parseAPI/src/BoundFactCalculator.C
    M parseAPI/src/BoundFactData.C
    M parseAPI/src/IndirectASTVisitor.C
    M stackwalk/src/linux-swk.C
    M symtabAPI/h/Symtab.h
    M symtabAPI/src/Aggregate.C
    M symtabAPI/src/Collections.C
    M symtabAPI/src/Module.C
    M symtabAPI/src/Object-elf.C
    M symtabAPI/src/Type.C
    M symtabAPI/src/dwarfWalker.C

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into att_syntax


Compare: https://github.com/dyninst/dyninst/compare/ff4ffd9d49b0...c10d781fd967
[← Prev in Thread] Current Thread [Next in Thread→]