Skip to content

0.6.0

Compare
Choose a tag to compare
@CodaFi CodaFi released this 25 May 23:10
b876a1b

⚠️ Breaking Changes Ahead ⚠️

  • LLVMSwift now enforces deployment target constraints. In the future, we will continue to update this constraint in line with the LLVM homebrew package.
  • The PassPipeliner is now provided as an alternative to FunctionPassManager, which may crash if used in many common situations. Please migrate accordingly.
  • The FunctionPassManager is now deprecated
  • Documentation for core components continues to improve
  • An analog to LLVM’s infamous target Triple API has been added. APIs that previously dealt with Strings have been updated accordingly
  • The bindings to ObjectFile were not correct and were not nearly feature-rich enough. The API has been completely overhauled
  • The IRInstruction protocol has been added to unify instruction values around a common protocol.
  • Metadata can now be attached to instructions
  • The debug location accessor now supports being reset to nil without crashing
  • DIFile now exposes file metadata, and file metadata now exposes its source text, directory, and name
  • The Metadata Builder facility (MDBuilder) has been ported from LLVM
  • Additional bit-manipulation primitives for setting and clearing bits and getting leading and trailing 1’s counts have been added to APInt
  • The labels on FunctionType's initializer have been removed
  • The internalize pass has been added
  • All SROA passes no longer differentiate between their parameters. They are now deprecated - SROA is available under with the unified scalarReplacementOfAggregates pass