-
Notifications
You must be signed in to change notification settings - Fork 76
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
Bitfield Domain #1623
base: master
Are you sure you want to change the base?
Bitfield Domain #1623
Conversation
…d some revision. Possible side-effects and runtime in O(n^2) while O(n) should be possible.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Semgrep OSS found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.
…act bitfield by eliminating constants that would result in a shift to zero beforehand
* implemented modulo * current changes * implementation of add, sub, mul based on paper * implemented neg * bug fixes for arith operators --------- Co-authored-by: Adrian Krauß <[email protected]>
Overflow and wrapping
…unknown bits and introduced module for infix ops on bitfields
Bugfixes for problems found by quickcheck
let lognot ik i1 = BArith.lognot i1 |> norm ik |> fst | ||
|
||
let shift_right ik a b = | ||
M.trace "bitfield" "shift_right"; |
Check warning
Code scanning / Semgrep OSS
Semgrep Finding: semgrep.trace-not-in-tracing Warning
else norm ik (BArith.shift_right ik a b) | ||
|
||
let shift_left ik a b = | ||
M.trace "bitfield" "shift_left"; |
Check warning
Code scanning / Semgrep OSS
Semgrep Finding: semgrep.trace-not-in-tracing Warning
This pull request introduces a new bitfield domain, into the IntDomain.
Currently being worked on...