recent and upcoming advances in the dyninst toolkits
play

Recent and Upcoming Advances in the Dyninst Toolkits Bill Williams - PowerPoint PPT Presentation

Recent and Upcoming Advances in the Dyninst Toolkits Bill Williams Paradyn Project Petascale Tools Workshop Granlibakken, CA Aug 1-Aug 4, 2016 Dyninst Development Roadmap Dyninst 9.2 Dyninst 9.3 Dyninst 10.0 Q2/3 2016


  1. Recent and Upcoming Advances in the Dyninst Toolkits Bill Williams Paradyn Project Petascale Tools Workshop Granlibakken, CA Aug 1-Aug 4, 2016

  2. Dyninst Development Roadmap Dyninst 9.2 Dyninst 9.3 Dyninst 10.0 Q2/3 2016 Q3 2016 2017 • New platforms • Smarter, better, faster • New features • Testing and robustness New Developments in the Dyninst Toolkits 2

  3. Dyninst Platforms Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 3

  4. Dyninst Platforms Dyninst 9.2 KNL support PPC/LE analysis ARMv8 instructions Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 3

  5. Dyninst Platforms Dyninst 9.2 Dyninst 9.3 KNL support PPC/LE instrumentation PPC/LE analysis Windows rewriter ARMv8 instructions ARMv8 parsing Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 3

  6. Dyninst Platforms Dyninst 9.2 Dyninst 9.3 Dyninst 10.0 KNL support PPC/LE instrumentation ARMv8 instrumentation Windows 64-bit PPC/LE analysis Windows rewriter Power9? ARMv8 instructions ARMv8 parsing ARM 32-bit? Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 3

  7. Dyninst Features Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 4

  8. Dyninst Features Dyninst 9.2 New platforms PIE rewriting support Bug fixes Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 4

  9. Dyninst Features Dyninst 9.2 Dyninst 9.3 New platforms AT&T disassembly PIE rewriting support PPC ABI v2 Bug fixes abstractions Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 4

  10. Dyninst Features Dyninst 9.2 Dyninst 9.3 Dyninst 10.0 New platforms AT&T disassembly Callbacks revisited Exception support PIE rewriting support PPC ABI v2 GPU abstractions Bug fixes abstractions Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 4

  11. Smarter, Better, Faster Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 5

  12. Smarter, Better, Faster Dyninst 9.2 SD-Dyninst in main release Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 5

  13. Smarter, Better, Faster Dyninst 9.2 Dyninst 9.3 SD-Dyninst in Better line info main release Better stack analysis Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 5

  14. Smarter, Better, Faster Dyninst 9.2 Dyninst 9.3 Dyninst 10.0 SD-Dyninst in Better line info DWARF for relocated main release code Better stack SD-Dyninst analysis Self-propelled Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 5

  15. Testing and Robustness Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 6

  16. Testing and Robustness Dyninst 9.2 Move to github Fuzz testing DataflowAPI docs Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 6

  17. Testing and Robustness Dyninst 9.2 Dyninst 9.3 Move to github Better CI system Fuzz testing Better test reports DataflowAPI docs Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 6

  18. Testing and Robustness Dyninst 9.2 Dyninst 9.3 Dyninst 10.0 Move to github Better CI system Ongoing improvements Fuzz testing Better test reports DataflowAPI docs Q2/3 2016 Q3 2016 2017 New Developments in the Dyninst Toolkits 6

  19. Github and Community Engagement o Open bug tracker o Easier to verify contributions o Turnkey release system o Increased activity o Number of commits o Number of committers o Transparent discussions New Developments in the Dyninst Toolkits 7

  20. Outside contributions (current and future) o Architecture-independent binary analysis o Improvements in continuous integration o Much code cleanup o External build and test machines o More and better bug reports o More collaborative bug fixes New Developments in the Dyninst Toolkits 8

  21. Release 9.2.1 o Line information fixes o Correctness (virtual functions, Fortran) o Speed o PPC64 rewriting fixes o Generate more robust intermodule calls o Crash bugs fixed o Windows stack walking fixes New Developments in the Dyninst Toolkits 9

  22. Dyninst 9.3 o PPC ABI v2 o Uniform AT&T disassembly o ARM64 instruction semantics o Complete ParseAPI on ARM64 o Windows rewriter New Developments in the Dyninst Toolkits 10

  23. Fuzz testing instructions o Started in Dyninst 9.1 o Integral in ARM implementation o Allowed rapid, accurate catch-up on x86 New Developments in the Dyninst Toolkits 11

  24. ARM semantics: interface Provides overridable function for each element of semantic pseudocode: o Assignment o Bit field extraction o Sign/zero extension o Math o If/then/else o Register access o Memory access New Developments in the Dyninst Toolkits 12

  25. ARM semantics: construction Translate book pseudocode to ROSE policy class o Build Bison grammar from XML to C++ o Start with elements for common instructions o Apply to ParseAPI o Iterate New Developments in the Dyninst Toolkits 13

  26. Software info o Main project page: https://github.com/dyninst/ dyninst o Issue tracker o Releases and manuals o Coming soon: test results o LGPL o Contributions welcome New Developments in the Dyninst Toolkits 14

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend