v0.2.5
A minor release adding new transformations and fixing issues in the frontends, handling of derived types, dataflow analysis and transformations.
What's New
- A general
BlockIndexInjectTransformation
that injects the block-index into all array subscripts that have a local rank one less than their declared rank (#303) - A corresponding, IFS-specific
BlockViewToFieldViewTransformation
to replace per-block view pointers with full field pointers (#303) - A new
SCCRawStackPipeline
that uses a pool-allocator variant where each use of temporaries is replaced with fixed offsets into a pre-allocated scratch memory (#314, incorporating #201 by @rolfhm)
All Changes
- Block-index injection transformations by @awnawab in #303
- Fix parse failures with REGEX frontend due to white space in declarations by @reuterbal in #323
DataFlowAnalysis
bug fixes by @awnawab in #320- Fix derived type inheritance when parent type is not available (#330) by @reuterbal in #331
- InlineTransformation: Update Scheduler SGraph if marked_inline is activated by @awnawab in #322
HoistVariablesAnalysis
: remove unused explicit interfaces after inlining by @awnawab in #319- Fix Linter warnings for inline calls with interface block imported from header with func.h suffix by @reuterbal in #332
- Add transformation generated imports to driver or after inlining by @awnawab in #321
- Fix wrong classification as StatementFunction in translation to Loki IR by @reuterbal in #327
- get_pragma_parameters: Fix parsing clauses without parentheses in the tail string by @reuterbal in #324
- ProgramUnit.resolve_typebound_var: raise error if top-level parent is not declared by @reuterbal in #325
- Transformations: SCCRawStackPipeline and SCC config-from-file by @mlange05 in #314
Full Changelog: v0.2.4...v0.2.5