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

Change the containers in SymbolicEngine to obtain better complexity. #13

Closed
Pyraun opened this issue Jan 28, 2015 · 0 comments
Closed
Milestone

Comments

@Pyraun
Copy link
Contributor

Pyraun commented Jan 28, 2015

Look at SymbolicEngine.h, we have two list playing the role of map. One is addresses to Reference ID and the other is addresses to Symbolic Variable ID.

So I suggest to change these lists to two maps (0(n) -> 0(log(n)).

@Pyraun Pyraun changed the title Change the containers used in SymbolicEngine to obtain better complexity. Change the containers in SymbolicEngine to obtain better complexity. Jan 28, 2015
@Pyraun Pyraun self-assigned this Jan 28, 2015
Pyraun added a commit that referenced this issue Jan 28, 2015
To fit our needs, a collision in memoryReference must result to an
overwrite of the ancient value. The insert method of std::map
doesn't do this, so we use the overloading of the [] operator
instead.

symVarMemoryReference becomes a map from a symVar ID to a memory
address. This way correspond to its future use.

I change the signature to quickly of isMemoryReference in the last
commit, it was an error.
The value -1 is used as a NIL value and so this method can
definitively not return an unsigned int!
@Pyraun Pyraun closed this as completed Jan 29, 2015
@JonathanSalwan JonathanSalwan added this to the v0.1 milestone Apr 10, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants