This is just a simple wrapper project around uiCA to be able to simply assemble and analyse instruction.
In comparison to the original project this project contains a class uiCA_Wrapper
which can also analyse assembler instrucitons as strings or list of strings and
not just assembled binary files.
Example:
test = "l: add rax, rbx; add rbx, rax; dec r15; jnz l"
o = uiCA_Wrapper(test)
t = o.run()
print(t)To install the package locally run:
git clone --recursive https://github.com/FloydZ/uiCA_wrapper
cd uiCA_Wrapper
./setup.shNote the setup.sh. This is needed to build uiCA.
If you are a windoof user you can instead run
cd uiCA_Wrapper/uiCA/
./setup.cmdCurrently, the throughput is calculated by the wrapper class. Everything else is ignored.
llvm_mca wrapper:
- pass all global information to the code regions, s.t. the same views can be generated.
- instruction: add information like throughput, latency. get from another python package