translates simd opcodes to evm bytecode
Takes consecutively 4 command line arguments:
- rawRepeat = Bytecode generated for scalar input file is repeated rawRepeat times and appended to stdout
- rawPath = Path of input file for scalar operations
- simdRepeat = Bytecode generated for simd input file is repeated simdRepeat times and appended to stdout
- simdPath = Path of input file for simd operations
Xpush (SimdByte I LW8 LC4) [1,2,3,4]
Xpush (SimdByte I LW8 LC4) [1,2,3,4]
Xadd (SimdByte I LW8 LC4)
Pop
After running the command ".\ethparser.exe 0 .\ops\xadd\int\LW8\ethRaw.txt 1 .\ops\xadd\int\LW8\LC4\ethSimd.txt":
e02c0000000000000001000000000000000200000000000000030000000000000004e02c0000000000000001000000000000000200000000000000030000000000000004c12c50
Push LW8 15
Push LW8 15
Add
Pop
After running the command ".\ethparser.exe 4 .\ops\xadd\int\LW8\ethRaw.txt 0 .\ops\xadd\int\LW8\LC4\ethSimd.txt":
67000000000000000f67000000000000000f015067000000000000000f67000000000000000f015067000000000000000f67000000000000000f015067000000000000000f67000000000000000f0150
Note that, element count=4 for 1 simd addition computationally equal to 4 scalar additions. The examples above computes same amount of additions which corresponds to 4 scalar addition.