mirror of
https://github.com/pezkuwichain/revive.git
synced 2026-06-14 12:11:02 +00:00
Separate compilation and linker phases (#376)
Separate between compilation and linker phases to allow deploy time linking and back-porting era compiler changes to fix #91. Unlinked contract binaries (caused by missing libraries or missing factory dependencies in turn) are emitted as raw ELF object. Few drive by fixes: - #98 - A compiler panic on missing libraries definitions. - Fixes some incosistent type forwarding in JSON output (empty string vs. null object). - Remove the unused fallback for size optimization setting. - Remove the broken `--lvm-ir` mode. - CI workflow fixes. --------- Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com> Signed-off-by: xermicus <bigcyrill@hotmail.com> Signed-off-by: xermicus <cyrill@parity.io>
This commit is contained in:
@@ -12,15 +12,24 @@ This is a development pre-release.
|
||||
|
||||
Supported `polkadot-sdk` rev: `2503.0.1`
|
||||
|
||||
### Changed
|
||||
- Remove the broken `--llvm-ir` mode.
|
||||
- Remove the unused fallback for size optimization setting.
|
||||
- Unlinked contract binaries are emitted as raw ELF objects.
|
||||
|
||||
### Added
|
||||
- Line debug information per YUL builtin and for `if` statements.
|
||||
- Column numbers in debug information.
|
||||
- Support for the YUL optimizer details in the standard json input definition.
|
||||
- The `revive-explorer` compiler utility.
|
||||
- `revive-yul`: The AST visitor interface.
|
||||
- The `--link` deploy time linking mode.
|
||||
|
||||
### Fixed
|
||||
- The debug info source file matches the YUL path in `--debug-output-dir`, allowing tools to display the source line.
|
||||
- Incosistent type forwarding in JSON output (empty string vs. null object).
|
||||
- The solc automatic import resolution.
|
||||
- Compiler panic on missing libraries definition.
|
||||
|
||||
## v0.3.0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user