-
Notifications
You must be signed in to change notification settings - Fork 245
Open
Labels
Component: CoreIssue needs changes to the coreIssue needs changes to the coreCore: DataflowRelated to the Possible Value Set and Register Value systemsRelated to the Possible Value Set and Register Value systemsEffort: HighIssue should take > 1 monthIssue should take > 1 monthImpact: MediumIssue is impactful with a bad, or no, workaroundIssue is impactful with a bad, or no, workaround
Description
Currently we are tracking dataflow using an uint64_t, which works great, but would break if the input is wider than that. Modern compilers, especially MSVC, tend to use XMM registers when it can, and the underlying operation is often times just trivial, i.e., copy, xor, etc. These would all be handled if we support up to 128-, 256-, 512- bit dataflow.
https://github.com/chfast/intx might be a helpful library for the purpose. Also we probably wouldn't need arbitrary precession integer arithmetic -- 512 bit is honestly wide enough for most practical usage scenario
Not super related, but worth linking together: Vector35/debugger#184
Metadata
Metadata
Assignees
Labels
Component: CoreIssue needs changes to the coreIssue needs changes to the coreCore: DataflowRelated to the Possible Value Set and Register Value systemsRelated to the Possible Value Set and Register Value systemsEffort: HighIssue should take > 1 monthIssue should take > 1 monthImpact: MediumIssue is impactful with a bad, or no, workaroundIssue is impactful with a bad, or no, workaround