gigahorse-toolchain
gigahorse-toolchain copied to clipboard
Analytics returning 0 for all outputs
I'm currently running gigahorse via docker (ubuntu 22.04 souffle 2.2) and getting 0 for all outputs under Analytics regardless of bytecodes I use, even the example:
--------------------------------------------------------------------------------
Analytics
--------------------------------------------------------------------------------
Analytics_CallToSignature: 0
Analytics_CallWithSig: 0
Analytics_DataFlows: 0
Analytics_DataFlowsToDifferentPublicFunction: 0
Analytics_ERC20ApproveCall: 0
Analytics_ERC20TransferCall: 0
Analytics_ERC20TransferFromCall: 0
Analytics_EventSignature: 0
Analytics_LargestFunction: 0
Analytics_LenVarHasManyVars: 0
Analytics_MemConsStmtUsesFromDistinctPaths: 0
Analytics_MissingDataFlowsToSamePublicFunction: 0
Analytics_NonModeledMLOAD: 0
Analytics_NonModeledMSTORE: 0
Analytics_PolymorphicVariable: 0
Analytics_PublicFunctionArg: 0
Analytics_PublicFunctionArrayArg: 0
Analytics_Variables: 0
bytecode_size: 3644
The program still managed to capture the bytecode size differences and generate outputs for opcodes. However, files such as visualizeout.py
will not run since it's missing the necessary reference files.
Hi,
Can you share a smart contract that you try to decompile (by sharing its address) as well as the command you run and all the output of gigahorse.py
on the terminal? Can you try different settings (perhaps -i
for interpreted souffle)? As a last resort you could try using souffle 2.0.2.
Let me know if any of the above help, Sifis.
I have tried both contract from 0x4Cb18386e5d1F34dC6EEA834bf3534A970a3f8e7 and from examples/long_running.hex
The command I'm using is
gigahorse examples/long_running.hex -C clients/visualizeout.py --restart -i
Will try another version of souffle and let you know.
[update] tried souffle 2.0.2 and still get the same result