Commit Graph
781 Commits
Author SHA1 Message Date
Alex Beregszaszi 0e8e4eacd5 Pass on assembly instance from AssemblyStack to CompilerStack
This allows for generation of various output artifacts supported by the old codegen
2021-06-17 15:35:59 +02:00
Alex Beregszaszi 79794081eb Extract assemble() from compileContract() in CompilerStack 2021-06-17 15:28:22 +02:00
Kamil Śliwak 59957b18dc Make missing settings.optimizer.enabled key in Standard JSON equivalent to setting it to false 2021-06-15 16:06:22 +02:00
chriseth 3eaa37030a Fix infinite recursion in function call graph generator due to recursive constant references. 2021-06-08 16:39:30 +02:00
chriseth 7d8a4e63d8 Merge pull request #11491 from TerranCivilian/fix-10269
Remove unneeded include files
2021-06-07 20:15:20 +02:00
TerranCivilian c15501eea9 Remove unneeded include files 2021-06-07 12:53:18 -04:00
Mathias Baumann aae9d347aa Split DocStringParsing in two stages
one requiring type info in the next step
2021-06-07 14:49:46 +02:00
Mathias Baumann 56ebea8b2f ControlFlowAnalyser: Also consider called functions in a flow 2021-06-01 15:54:37 +02:00
Alex Beregszaszi 75c72cd54d Properly support inliner in settings.optimizer.details 2021-05-20 20:22:34 +01:00
chriseth f9c94d7c42 Note function entry points. 2021-05-04 17:15:13 +02:00
Djordje Mijovic e404b6e7a6 Refactoring yul source locations. 2021-05-04 16:05:23 +02:00
Kamil Śliwak 5023cef382 OptimiserSettings: Add preset() and OptimisationPreset enum 2021-04-27 14:06:44 +02:00
Alexander Arlt 481971cbcf [isoltest] Add support for external sources. 2021-04-26 08:27:30 -05:00
Alex Beregszaszi e39433198d Remove the usage of boost::noncopyable
Prior to this half of the codebase used explicit deleted copy constructors, the others used boost::noncopyable.
2021-04-23 14:57:01 +01:00
Leonardo Alt dd1865873e Choose contracts to be analyzed by the SMTChecker 2021-04-21 10:34:14 +02:00
chriseth cf7f814a4e Merge pull request #10921 from ethereum/issue-10881
Natspec: Don't copy from base function if return parameters differ
2021-04-20 15:33:48 +02:00
Leonardo Alt e3abde43f5 Change settings.modelChecker.targets to take an array instead of string 2021-04-19 17:53:03 +02:00
Mathias Baumann 1737bd7ded Natspec: Don't copy from base function if return parameters differ 2021-04-19 15:20:30 +02:00
Kamil Śliwak 0922d60ba6 FileReader: More accurate description of FileReader::readFile() and its arguments 2021-04-13 13:26:01 +02:00
Kamil Śliwak 6a41b417a3 FileReader: Store files loaded by the callback under their source unit name 2021-04-13 13:25:59 +02:00
Leonardo Alt b753cb6120 Deprecate pragma experimental SMTChecker 2021-04-08 21:03:38 +02:00
Christian Parpart 257672e56f Extract file reading logic from CommandLineInterface into FileReader class. 2021-04-06 17:10:43 +02:00
Christian Parpart 3490577140 Extract import-file remapping logic out of CompilerStack into ImportRemapper. 2021-04-06 14:28:53 +02:00
Christian Parpart 30588a90eb CompilerStack: assemblyString doesn't need to receive sourceCodes map as copy. 2021-04-06 14:28:01 +02:00
Mathias Baumann e590a99f39 Detect circular references for library and free functions 2021-03-30 23:06:30 +02:00
chriseth 79d7466e19 NatSpec for errors. 2021-03-30 21:16:58 +02:00
chriseth 517cd17a6f Add errors to the ABI. 2021-03-30 21:16:58 +02:00
chriseth e877e2bba7 Use all referenced errors. 2021-03-30 21:15:46 +02:00
hrkrshnn 45a3747701 Added FunctionSpecializer to the optimization suite 2021-03-29 11:02:18 +02:00
Mathias Baumann e197ebbdd1 Replace TypePointer with Type const* 2021-03-23 11:47:19 +01:00
chriseth 5690020d88 Allow custom natspec tags. 2021-03-02 16:13:28 +01:00
Kamil Śliwak 781f00771c Remove IRGenerator::verifyCallGraphs and make generate() verify the graphs automatically 2021-02-23 10:47:02 +01:00
Kamil Śliwak 54eb34d6fd Move call graphs from CompilerStack to ContractDefinitionAnnotation 2021-02-23 10:47:02 +01:00
Kamil Śliwak 6c28120f19 Move CallGraph structure to a separate module 2021-02-23 10:47:02 +01:00
Kamil Śliwak 769a7687c6 Make CompilerStack::contractDefinition() public 2021-02-23 10:47:02 +01:00
Mathias Baumann 53d70dec57 CompilerStack: Build call graphs in the analysis phase 2021-02-23 10:46:28 +01:00
Kamil Śliwak 529495c530 CompilerStack: Typo in a comment 2021-02-23 10:29:12 +01:00
Kamil Śliwak e27afe93a9 CompilerStack: Fix style on local variable name 2021-02-23 10:29:12 +01:00
Djordje MijovicandKamil Śliwak 68a4efb2e7 Refactor overwriteRelease flag.
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2021-02-12 10:37:59 +01:00
chriseth a72ab1c9c1 Replace "runtime" by "deployed" naming. 2021-02-10 00:56:16 +01:00
chriseth 9b20c9840a Merge pull request #10885 from ethereum/heuristic-revamp
Yul Backend: Get rid of heuristics for finding the matching runtime
2021-02-10 00:49:56 +01:00
Daniel Kirchner cb74a45fd6 Add inlining for old optimizer. 2021-02-09 19:08:58 +01:00
Mathias Baumann e4f1257c83 Yul Backend: Get rid of heuristics for finding the matching runtime 2021-02-09 14:50:25 +01:00
Leonardo Alt 3b23cadbdc Add CLI and JSON option to select SMTChecker targets 2021-01-20 17:35:37 +01:00
Suriyaa Sundararuban 8649df169d Update Natspec documentation URL 2020-12-27 14:55:40 +01:00
Alex Beregszaszi 953d18c6cb Output runtime object in IR 2020-12-16 19:23:10 +00:00
chriseth 561280a5cc Merge remote-tracking branch 'origin/develop' into breaking 2020-12-14 11:33:40 +01:00
Alex Beregszaszi bcaefb57b8 Add evmAssembly and evmRuntimeAssembly pointer in CompilerStack
This is a preparation for allowing those outputs to be served from the IR too
2020-12-11 14:53:29 +00:00
Alex Beregszaszi 98d8174d31 Simplify Compiler/CompilerContext by removing extra layers of indirection 2020-12-11 14:43:51 +00:00
chriseth 482bda6887 Merge remote-tracking branch 'origin/develop' into breaking 2020-12-10 12:15:52 +01:00