Paweł Bylica
1e6659d1a9
Allow selecting VM kind manually
10 years ago
Paweł Bylica
898682d04d
JIT class: the EVM JIT facade.
The JIT class added, future public EVM JIT library interface. Currently it supports queries about EVM code status.
10 years ago
chriseth
2111cd4894
Move assembly related files to libevmasm and Params.h/.cpp to libevmcore.
10 years ago
chriseth
229b2486a4
Statically compile libevmjit-cpp.
10 years ago
Paweł Bylica
7226fe23aa
Change instruction scheduler
Try different instruction scheduler in LLVM, other crashes sometimes.
Also parse command line options properly for random tests.
10 years ago
Paweł Bylica
4cbc52afcf
Fix stack limit check
10 years ago
Paweł Bylica
dda4ccff3e
Control stack size limit
10 years ago
Paweł Bylica
d1f9f0290f
Add option to preload cache
10 years ago
Paweł Bylica
bd1e66dd11
Code cleanup
10 years ago
Paweł Bylica
8926a979ed
Select list-burr LLVM instruction scheduler
Workaround for LLVM bug https://llvm.org/bugs/show_bug.cgi?id=22304
in source scheduler.
10 years ago
Paweł Bylica
a86fa46e89
Do not subbalance twice
VM does not need to subbalance a caller. Balance tranfer is taken care on higher level.
10 years ago
Paweł Bylica
cc1be11d6c
Constant folding in div-based operators disabled
There is a bug in LLVM arbitrary precision division algorithm.
10 years ago
Paweł Bylica
609a811753
Fixes and workarounds
- Fix data copy: padding memory was not zero'd.
- Fix inter-block stack optimization: incorrect phi node in first block.
- Workaround incorrect llvm::APInt::urem() implementation.
10 years ago
Gav Wood
1619d230c3
Extensive pathway for reporting transaction execution results.
10 years ago
Paweł Bylica
4b37ed9e16
Additional cache options: readonly, writeonly and clear.
10 years ago
Paweł Bylica
06a17b1040
Better style
10 years ago
Paweł Bylica
a64b4d9f71
Workaround for buggy LLVM ctlz used in counting EXP cost
10 years ago
Paweł Bylica
52ca0bac51
Do not update the stack after it was freed by RETURN instruction
10 years ago
Paweł Bylica
7476979d0b
Style corrections, optimized but notworking mul256 implementation removed
10 years ago
Paweł Bylica
e93a87e08a
PoC-9 call depth handling update
10 years ago
Paweł Bylica
e7cff33889
Update gas costs for PoC-9: set nonzero storage clear cost
10 years ago
Paweł Bylica
1f231bafcc
Update gas costs for PoC-9: changes in CALL gas price support
10 years ago
Paweł Bylica
f1a1fe22a6
Update gas costs for PoC-9 (WIP)
10 years ago
CJentzsch
ad1fe7840f
fix evmjit build
10 years ago
CJentzsch
e938bbc8c6
fix evmjit build
10 years ago
Paweł Bylica
c97d2d44d3
Update cmake scripts, use static list of source files
10 years ago
CJentzsch
f15e53a8d6
fix evmjit build
10 years ago
Paweł Bylica
58e9beb98e
Cache pointers for emited functions
10 years ago
Paweł Bylica
24ba049938
Add library version stamp to cached objects
10 years ago
Paweł Bylica
5e3cf7f297
Ad-hoc constant fold arithmetic instructions
10 years ago
Paweł Bylica
cf236b6f9c
Mark arithmetic functions with nounwind and readnone attributes
10 years ago
Paweł Bylica
6d6256f83b
Allow mixing debug version of evmjit with release version of LLVM library
10 years ago
Paweł Bylica
d2deff5f20
Increase memory limit to 2^33 (8GB)
10 years ago
Paweł Bylica
6941a1c78c
Fix memory leaks
10 years ago
Paweł Bylica
3da758ccbb
Delete old memory pointers
10 years ago
Paweł Bylica
307e37912b
Free memory data, place Runtime in ExecutionEngine
10 years ago
Paweł Bylica
8a22e05c1e
Fix wrong llvm::Twine usage (or MSVC bug)
10 years ago
Paweł Bylica
697637025b
Change Runtime interface
10 years ago
Paweł Bylica
87a7d53a9b
Init memory array in LLVM
10 years ago
Paweł Bylica
e8a75a7327
Quadratic memory cost
10 years ago
Paweł Bylica
14d793a527
Reimplementation of mem.require helper function. Uses 64-bit arithmetics.
10 years ago
Paweł Bylica
5a14c942fa
Remove Runtime pointer from memory helper functions
10 years ago
Paweł Bylica
6d0bc21945
Remove old memory backend
10 years ago
Paweł Bylica
e548f9ea79
Load memory data from Array memory
10 years ago
Paweł Bylica
fa86522565
Using Array as a second memory
10 years ago
Paweł Bylica
8e6d368902
Create Array for memory
10 years ago
Paweł Bylica
1297542642
Remove external jmpBuf pointer
10 years ago
Paweł Bylica
32515a77d3
Extract gas pointer from RuntimeData
10 years ago
Paweł Bylica
cb06501606
Pass jmpbuf as mem.require argument
10 years ago
Paweł Bylica
d2c82bf9c9
Update gas.check helper function: Runtime pointer not needed
10 years ago