Commit Graph

7872 Commits

Author SHA1 Message Date
chriseth
0745628a73 Code generation for for-loops. 2017-06-16 10:56:21 +01:00
chriseth
868b5ad3aa Split block code generation into main and finalize. 2017-06-16 10:56:21 +01:00
chriseth
1b3ba7bc57 Some more tests. 2017-06-16 10:56:21 +01:00
chriseth
78b49db779 Helper to count the number of variables in a scope. 2017-06-16 10:56:21 +01:00
chriseth
8e5c4bf21d Add include file to forward-declare inline assembly structs. 2017-06-16 10:56:21 +01:00
chriseth
49b1112117 For loops analysis. 2017-06-16 10:56:21 +01:00
Alex Beregszaszi
47925bc14e Parse for statement in assembly parser / printer 2017-06-16 10:56:21 +01:00
Federico Bond
0eaae03bbf Try to recover from parser errors where possible 2017-06-15 21:14:05 -03:00
Federico Bond
60bfae75e5 Improve error reporting of trailing commas 2017-06-15 13:10:08 -03:00
James Ray
0d9970de1d Link for the semantic versioner for npm 2017-06-15 22:01:17 +10:00
James Ray
c1e0a6557d Create types.rst
"is compiled" avoids ambiguity compared with "maps", especially for those who may not understand what maps may mean and may confuse it with the "mapping" code keyword
2017-06-15 19:37:37 +10:00
Alex Beregszaszi
54e97d1c34 Merge pull request #2402 from ethereum/grammar-updates
Grammar updates (mostly assembly)
2017-06-15 10:19:04 +01:00
chriseth
fb5db94879 Merge pull request #2397 from ethereum/doublepush
Peephole optimizer for double push.
2017-06-15 10:50:07 +02:00
chriseth
1636602fc4 Merge pull request #2363 from ethereum/windows_bytecodedir
Change windows CI to use the same bytecode directory as linux.
2017-06-15 10:13:58 +02:00
chriseth
9084d48750 Merge pull request #2382 from ruchevits/combined-json-hashes
Allow including hashes of method signatures in --combined-json output
2017-06-15 10:10:18 +02:00
chriseth
7af9d10006 Fix lll test. 2017-06-15 10:07:17 +02:00
chriseth
3cb71ac516 Merge pull request #2398 from ethereum/assembly-cleanup
Remove obsolete features from libevmasm
2017-06-15 08:41:14 +02:00
chriseth
71fea1e370 Merge pull request #2396 from ethereum/asm-aux
Display auxiliary data in assembly
2017-06-15 08:39:11 +02:00
chriseth
66881bd675 Merge branch 'develop' into asm-aux 2017-06-15 08:39:02 +02:00
Alex Beregszaszi
eb73015fd2 Support dialect of assembly in grammar 2017-06-15 00:43:19 +01:00
Alex Beregszaszi
9e1d24a7eb Support interface contracts 2017-06-15 00:41:00 +01:00
Alex Beregszaszi
4970d89f3b Support AssemblyLabel in grammar 2017-06-15 00:40:01 +01:00
Alex Beregszaszi
1ceb735fe1 Fix AssemblyAssignment in grammar 2017-06-15 00:39:46 +01:00
Alex Beregszaszi
c08c4b8b6f Move subroutine helpers from CompilerContext to Assembly 2017-06-14 21:21:26 +01:00
Alex Beregszaszi
6a260a9ff1 Remove single use Assembly::popTo 2017-06-14 21:21:26 +01:00
Alex Beregszaszi
18fc667658 Remove obsolete Assembly::out 2017-06-14 21:21:26 +01:00
Alex Beregszaszi
398099f50e Remove obsolete errorTag() 2017-06-14 21:21:26 +01:00
Alex Beregszaszi
42b61171d9 Merge pull request #2192 from winsvega/develop
add STATICCALL instruction
2017-06-14 21:03:32 +01:00
Alex Beregszaszi
3c4671a2da Match substring in tests to avoid metadata issues 2017-06-14 20:31:20 +01:00
Alex Beregszaszi
585b3ea3e3 Print auxiliary data in the assembly 2017-06-14 20:14:15 +01:00
Alex Beregszaszi
3273e865ec Print assembly even if there's no data section 2017-06-14 19:51:02 +01:00
chriseth
e5b0ad562e Peephole optimizer for double push. 2017-06-14 20:02:45 +02:00
chriseth
a87b22c122 Change windows CI to use the same bytecode directory as linux. 2017-06-14 18:59:23 +02:00
chriseth
f008ddf836 Merge pull request #2381 from ethereum/fixcrash
Fix a crash about a non-callable expression.
2017-06-14 18:35:38 +02:00
chriseth
fd5bf16101 Merge pull request #2384 from ethereum/parseFunctionalInstructions
Enforce function arguments when parsing functional instructions.
2017-06-14 18:35:16 +02:00
Dimitry
c20cdd0a05 add new opcode instructions to the parser
STATICCALL        0xfa  6 inputs  (gas address mem1 mem2 mem3 mem4)
2017-06-14 18:18:12 +02:00
chriseth
d693822a6f Merge pull request #2394 from ethereum/lll-shifts
Support shl/shr in LLL
2017-06-14 18:04:40 +02:00
chriseth
2491721d42 Merge pull request #2149 from ethereum/eip-create
Introduce CREATE2 in the assembler
2017-06-14 17:40:39 +02:00
chriseth
29e7ad3d7b Silence compiler warning. 2017-06-14 17:39:36 +02:00
chriseth
bab470086c Merge pull request #2364 from VoR0220/abiSpec
Bring ABI Spec Into Solidity Documentation
2017-06-14 17:25:31 +02:00
Alex Beregszaszi
5609d2b4a8 Merge pull request #2395 from ethereum/json-license
Include license text in emscripten output
2017-06-14 15:57:18 +01:00
chriseth
2b3b00776e Additional test. 2017-06-14 16:06:48 +02:00
Alex Beregszaszi
a921bd0ae4 Display user friendly instruction name 2017-06-14 16:00:39 +02:00
Alex Beregszaszi
494b9dbfaa Issue warning for using CREATE2 in inline assembly 2017-06-14 16:00:39 +02:00
Alex Beregszaszi
bec30051c5 Introduce CREATE2 in the assembler 2017-06-14 16:00:39 +02:00
chriseth
98139ead42 Clarify functional style. 2017-06-14 15:46:16 +02:00
chriseth
1ae0e082b3 Merge pull request #2392 from federicobond/disallow-trailing-commas
Forbid trailing commas in named arguments
2017-06-14 15:31:40 +02:00
Alex Beregszaszi
e6a36e0121 Include trailing zero in license 2017-06-14 14:14:52 +01:00
Alex Beregszaszi
412802a6c1 Include license text in emscripten output 2017-06-14 14:14:01 +01:00
Alex Beregszaszi
600e3ad240 Support shl/shr in LLL 2017-06-14 14:08:28 +01:00