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
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
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
Paweł Bylica
c97d2d44d3
Update cmake scripts, use static list of source files
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
Paweł Bylica
d5d56657cf
Move Array helper to separated compilation unit
10 years ago
Paweł Bylica
4207d46ba8
Unused class removed
10 years ago
Paweł Bylica
b2982d6374
Reimplement no-op version of DLOG to avoid C++ compiler warning
10 years ago
Paweł Bylica
29ba066971
Fix logging on GCC, release variant added
10 years ago
Paweł Bylica
7d7e6ec7f5
Using logs utils from LLVM
10 years ago
Paweł Bylica
ba27591cd5
Typo fix
10 years ago
Paweł Bylica
14bcb21373
Fixing EVMJIT build on Mac OS
10 years ago
Paweł Bylica
681ba24d33
Free memory allocated for dynamic stack
10 years ago
Gav Wood
e185d9a117
Add EVMJIT.
10 years ago
Paweł Bylica
cd1dea3594
Global/dynamic stack implementation with realloc
10 years ago
Paweł Bylica
1e81754a33
Stack improvements: all helper functions are generated on demand, no global alloca for arguments
10 years ago
Paweł Bylica
fe0517cf6d
Workaround for printing extractvalue instruction in DOT language
10 years ago
Paweł Bylica
1ea5eb4105
Destroy LLVM ManagedStatics
10 years ago