Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create CLI Option to Execute RISC-V Symbolically #43

Closed
ChristianMoesl opened this issue Sep 18, 2020 · 1 comment · Fixed by #48
Closed

Create CLI Option to Execute RISC-V Symbolically #43

ChristianMoesl opened this issue Sep 18, 2020 · 1 comment · Fixed by #48
Assignees
Labels
feature New feature or request released

Comments

@ChristianMoesl
Copy link
Collaborator

No description provided.

@ChristianMoesl ChristianMoesl added the feature New feature or request label Sep 18, 2020
@ChristianMoesl ChristianMoesl self-assigned this Sep 18, 2020
@ChristianMoesl ChristianMoesl changed the title Create CLI Option to Execute RISC-V Symbollically Create CLI Option to Execute RISC-V Symbolically Sep 18, 2020
ChristianMoesl added a commit that referenced this issue Sep 24, 2020
 - also remove compile CLI option
 - create a engine module the symbolic execution engine
 - use a integration test to execute the engine
 - fix bugs in our SMT solver

Closes #43.
ChristianMoesl added a commit that referenced this issue Sep 24, 2020
 - also remove compile CLI option
 - create a engine module the symbolic execution engine
 - use a integration test to execute the engine
 - fix bugs in our SMT solver

Closes #43.
ChristianMoesl added a commit that referenced this issue Sep 24, 2020
 - also remove compile CLI option
 - create a engine module the symbolic execution engine
 - use a integration test to execute the engine
 - fix bugs in our SMT solver

Closes #43.
ChristianMoesl added a commit that referenced this issue Sep 24, 2020
 - also remove compile CLI option
 - create a engine module the symbolic execution engine
 - use a integration test to execute the engine
 - fix bugs in our SMT solver

Closes #43.
@finga finga closed this as completed in #48 Sep 24, 2020
finga pushed a commit that referenced this issue Sep 24, 2020
- also remove compile CLI option
 - create a engine module the symbolic execution engine
 - use a integration test to execute the engine
 - fix bugs in our SMT solver

Closes #43.
ChristianMoesl added a commit that referenced this issue Nov 17, 2020
- also remove compile CLI option
 - create a engine module the symbolic execution engine
 - use a integration test to execute the engine
 - fix bugs in our SMT solver

Closes #43.
github-actions bot pushed a commit that referenced this issue Jan 20, 2021
# [0.1.0](v0.0.1...v0.1.0) (2021-01-20)

### Bug Fixes

* BEQ for concrete conditions does not create a constrain ([#44](#44)) ([#45](#45)) ([8ca6ec9](8ca6ec9))
* beq/jal edges ([870bf6e](870bf6e))
* bug in z3 interface where wrong symbolic constants are used ([0fd3de6](0fd3de6))
* CFG computation for loops ([#57](#57)) ([80b8859](80b8859))
* command line parsing ([#37](#37)) ([d20c954](d20c954))
* constraints are now properly displayed in data-flow graphs ([9fa61d0](9fa61d0))
* data segment loading ([#54](#54)) ([4ec4f1d](4ec4f1d))
* dead code elimination now working properly for data-flow graphs ([114e75d](114e75d))
* divu now properly implemented ([#105](#105)) ([b4ee0aa](b4ee0aa))
* fixing divu exit point collection for candidate path generation ([c531663](c531663))
* fold all constants in SMT query ([#100](#100)) ([#101](#101)) ([a2dfc0a](a2dfc0a)), closes [#102](#102) [#103](#103) [#102](#102)
* implemented fix for exit ecall edge ([4cfb9e0](4cfb9e0))
* minor mistakes ([#26](#26)) ([a8e6fbc](a8e6fbc))
* operand side edges ([#70](#70)) ([c7b9c00](c7b9c00))
* recursion support for shortest path heursitic ([#69](#69)) ([#76](#76)) ([914f24e](914f24e))
* small mistakes fixed ([83b637d](83b637d))
* use ugt SMT-lib operator for SLTU ([94213cd](94213cd))

### Features

* ability to print SMT-lib format ([c8c6898](c8c6898))
* add "execution depth" as abort criteria ([#90](#90)) ([4b4829d](4b4829d))
* add banch decisions to test DFG generation with BEQ constrains ([f5e96e2](f5e96e2))
* add candidate path algorithm and generation of a formula graph (WIP) ([83cf753](83cf753))
* add CLI argument for CFG ([0a5493b](0a5493b))
* add CLI option for symbolic execution ([#43](#43)) ([#48](#48)) ([ce3f6fe](ce3f6fe))
* add CLI option to configure memory size of executor ([f30f4f7](f30f4f7))
* add command line argument parsing ([7f21061](7f21061))
* add smt generation and solving ([#38](#38)) ([fab1457](fab1457)), closes [#16](#16)
* add support for division by zero and memory access errors ([#77](#77)) ([#79](#79)) ([e7dc16f](e7dc16f))
* add Z3 SMT solver support ([#68](#68)) ([af9ef1b](af9ef1b))
* basic facilities for candidate path generation ([64a9fe8](64a9fe8))
* candidate path generation (Needs testing) ([43723a2](43723a2))
* compute edges for BEQ instruction ([6ff5ebc](6ff5ebc))
* dead code elimination updated ([97caddd](97caddd))
* eagerly evaluate PC in BEQ instructions ([0ef582c](0ef582c))
* first attempt to build a CFG and enabled formatter/linter ([a09a934](a09a934))
* functions for finding candidate path root nodes (WIP) ([9fd31ab](9fd31ab))
* generate all candidate paths for a given binary ([#7](#7)) ([#46](#46)) ([c00b605](c00b605))
* generate dataflow graph from RISC-U path and add Selfie as compiler ([5f36c4d](5f36c4d))
* implement bit vector remainder operand in monster solver ([#107](#107)) ([5cb4f26](5cb4f26))
* implement dataflow graph generation (WIP) ([5078ccd](5078ccd))
* implement DIVU in Monster solver and tests ([#72](#72)) ([c8f9d3d](c8f9d3d))
* implement Propagation Based Local Search for simple Formula ([#25](#25)) ([396fbbe](396fbbe))
* implement shortest path heuristic for path exploration ([#60](#60)) ([#61](#61)) ([453a615](453a615))
* implement SLTU in Monster solver ([#58](#58)) ([#73](#73)) ([bf7f8f7](bf7f8f7))
* implement SUB in the native solver ([#62](#62)) ([#63](#63)) ([8ccfd5d](8ccfd5d))
* implemented sltu in boolector and z3 ([#75](#75)) ([#80](#80)) ([af5b364](af5b364))
* implemented timeout correctly ([#74](#74)) ([#97](#97)) ([867a240](867a240))
* improve command line argument parsing and handling ([a50c59d](a50c59d))
* improve terminal output by using a logging library ([#66](#66)) ([#67](#67)) ([465e35c](465e35c))
* naive implementation of a RISC-U disassembler ([db125f6](db125f6))
* prototypical implementation to load ELF object files ([4caf390](4caf390))
* reduce executed candidate paths ([#55](#55)) ([#64](#64)) ([31420ed](31420ed))
* remove log header on default terminal output ([#94](#94)) ([92cce66](92cce66))
* some stubs for (ternary) bit vectors ([#9](#9)) ([b89220d](b89220d))
* started working on dead code elimination (WIP) ([a81708c](a81708c))
* stubs for dataflow graph ([11aa224](11aa224))
@github-actions
Copy link

🎉 This issue has been resolved in version 0.1.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request released
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant