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

Chess changes breakout for upstream #2469

Draft
wants to merge 100 commits into
base: master
Choose a base branch
from
Draft

Chess changes breakout for upstream #2469

wants to merge 100 commits into from

Conversation

ekilmer
Copy link
Contributor

@ekilmer ekilmer commented Jul 19, 2021

DO NOT MERGE.

This is a draft PR only to comment and point out some separable features from this branch to be potentially submitted as standalone PRs and eventually merged into master

ekilmer and others added 30 commits May 26, 2020 11:22
* master:
  Change the default to threading (#1779)
  Coveralls Take 2 (#1784)
  Capture return values in run.sh (#1776)
  Create a model for strncpy (#1770)
  Add doc, fix output bugs (#1769)
* master:
  Linux: Add stat method for FdLike (#1780)
  Use default handler for symbolic system call arguments (#1785)
Extremely strange that my local black==19.10b0 doesn't catch this, but the one on GH actions does
* fix-emulate-step:
  Make rusticorn binary actually check behavior
  Add a Rust/Unicorn resumption test
  Fix linting on test_general
  Make emulator reinitialize after write backs are disabled
  Disable write back once we hit our stop in Unicorn emulation
* master:
  Change types.FunctionType=<class 'function'> (#1803)
  Fix test regressions (#1804)
  State Introspection API (#1775)
  Fix EVM account existence checks for selfdestruct and call (#1801)
  Add partial implementation of sendto syscall (#1791)
  crytic-compile: use latest release (#1795)
  Update gas metering for calls to empty accounts (#1774)
  Fix BitVec with symbolic offset and fix TranslatorSmtlib.unique thread safety (#1792)
  Fix Coveralls for external PRs (#1794)
  Convert plugin list to dict (#1781)
  Symbolic-length reads from symbolic sockets (#1786)
  Removing Thread unsafe global caching (#1788)
  Add Manticore native State-specific hooks (#1777)
* capstone-5-dev:
  New x86 instrution test
  Add lacking x86 tests
  ENDBR64 as nop
  Ignore coverage tracking for defensive assertions and exceptions
  Update Capstone commit to fix arm64 LD1 instruction immediates
  Fix ARM
  Fix aarch64
  Use my capstone dev branch until fixes are merged into next
* master:
  native/cpu/x86: Add support for CPUID EAX=80000000h (#1811)
* master:
  Manticore 0.3.5 (#1808)
  Fix yices timeout argument (#1817)
  Detect default solver (#1820)
  Ignore Gas Calculations by Default (#1816)
  native/cpu/x86: Add support for CPUID EAX=80000000h (#1811)
Sphinx doesn't handle side-effects of importing
Helpful for knowing the exact last executed instruction address.
* master:
  Switch to stable Black (#2536)
  Fix typo in Manticore.linux constructor docstring (#2535)
  Revert CI changes made in #2526
  Release Manticore 0.3.7 (#2526)
  Optimise forking when there is only 1 solution (#2527)
  Epoll Implementation (#2529)
  Split off ENDBR32/64 from CHESS branch (#2533)
  Update to crytic-compile 0.2.2 (#2530)
  Also ignore missing unicorn registers in the fallback emulator (#2531)
  x86 FXSAVE & FXRSTOR support (#2511)
  Fix `BitVecExtract` simplification for constant folding (#2524)
  Add pip-audit action workflow (#2513)
  Add EXPLICIT fork policy (#2514)
  Enforce crytic-compile==0.2.1 (#2512)
  Improve namedtuple definition (#2506)
  Add SMT simplifications for bitvec subtraction (#2504)
  Fix handling of the program base address in Linux (#2500)
@CLAassistant
Copy link

CLAassistant commented Apr 21, 2022

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
6 out of 7 committers have signed the CLA.

✅ ekilmer
✅ feliam
✅ Boyan-MILANOV
✅ sschriner
✅ kokrui
✅ lordidiot
❌ Eric Hennenfent


Eric Hennenfent seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

Boyan-MILANOV and others added 26 commits April 21, 2022 17:56
This reverts commit 504ec9c. It seems that FXSAVE/FXSTORE on symbolic data causes or triggers some bugs in Manticore in the MATE tests, so we revert the commit until we figure out the root cause of the issue.
* capstone-5-dev:
  Use latest tagged capstone==5.0.0rc2
  Fix more errors in tests
  Fix test
  Remove duplicate x86 ENDBR64 instruction
* Fix bug in register_log_callback

* Add type hints, re-arrange code

* Change CallbackStream to inherit io.StringIO

* Tests pass
Still doesn't pass tests, but might be due to other issues. Pushing
this for further reference
We needed to add some more CPU features, as reported by CPUID
instruction to pass checks in glibc
Both the emulator and Manticore semantics for CPUID need to match
in order to correctly execute the same paths
* master:
  Capstone 5 updates (5.0.0rc2) (#1701)
  Add syscall implementation for `sys_newfstatat` (#2545)
  Fix newstat and newfstat (#2544)
* chess:
  Capstone 5 updates (5.0.0rc2) (#1701)
  Add syscall implementation for `sys_newfstatat` (#2545)
* chess:
  Revert CI run on branch
* master:
  Add `psubq` instruction (x86) (#2553)
* master:
  Fix plugin docs (#2554)
  Use protobuf version 3 (#2558)
* master:
  Update to Unicorn v2.0.0 (#2564)
  Retry coveralls upload (#2565)
  Use python3.7 instead of python3 (#2562)
  workflows/pip-audit: use our official action (#2561)
* master:
  Loosen test dependency version constraints (#2568)
  Loosen crytic-compile version restrictions (#2567)
* Add boolean simplifications

* Fix typo

* Lint tests

* Test remove simplifications

* Comment simplification tests to check eth bench tests

* Re-enable BoolEqual simplifications

* Fix BoolNot

* Fix tests

* Fix more tests

* Re-enable other boolean simplifications and tests

* Fix tests

* Fix tests

* Add multiplication simplification

* Fix tests

* Lint

* Improve docstrings

Co-authored-by: Eric Kilmer <eric.d.kilmer@gmail.com>

Co-authored-by: Eric Kilmer <eric.d.kilmer@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Manticore
  
In progress
Development

Successfully merging this pull request may close these issues.

None yet

7 participants