Jonathan Salwan
Jonathan Salwan
> It appears that the MemoryAccess information stored in instruction might only contain concrete access information, Have you tried to use `MemoryAccess::getLeaAst()`? That should return the symbolic memory access.
Thx for the report. I will dig into this bug as soon as I can :)
There is no formal plan here :). I don't know when a new release will be pushed.
By default the concrete state is zero and there is no symbolic variable. The proper way to do is: 1. Load concrete memory 2. Init concrete state of registers 3....
> FYI, I followed the install instructions, which all went successfully. > > ``` > $ git clone https://github.com/JonathanSalwan/Triton > $ cd Triton > $ mkdir build ; cd build...
> SystemError: initialization of triton did not return an extension module From experiences, it can comes from: * Not the correct python version compiled. Like you compile for py3.10 but...
Make sure you have only one `libtriton` installed on your system. ``` $ sudo /usr/libexec/locate.updatedb $ locate triton.so /Users/jonathan/Works/Tools/Triton/build/src/libtriton/triton.so /opt/homebrew/lib/python3.11/site-packages/triton.so $ otool -L /opt/homebrew/lib/python3.11/site-packages/triton.so /opt/homebrew/lib/python3.11/site-packages/triton.so: @rpath/libtriton.dylib (compatibility version 0.0.0, current...
Yep indeed, Triton performs an over-approximation of tainting. At the beginning it was a choice but we can affine this granularity.
Yes, this is because with an array logic, memory cells contain their whole historic of memory accesses.
Below, an unit test that can be used to verify this behaviour. ```patch diff --git a/src/testers/unittests/test_symbolic_array.py b/src/testers/unittests/test_symbolic_array.py index 627da824..52d3ace3 100644 --- a/src/testers/unittests/test_symbolic_array.py +++ b/src/testers/unittests/test_symbolic_array.py @@ -199,3 +199,36 @@ class TestSymbolicArray(unittest.TestCase):...