Releases: espressif/llvm-project
Releases · espressif/llvm-project
esp-15.0.0-20230404
Changes (since esp-15.0.0-20221201):
Features:
- [Xtensa] Implements constant islands pass. For large code models it allows to intersperse code with constants, because sometimes L32R instruction range in immediate field is not enough.
- [LLD][Xtensa] Cover DIFF{8, 16, 32} relocations.
- [Xtensa] Improves fixup error messages in asm backend. Adds different diagnostic messages for different branch
relocation fixups.
Bug Fixes:
- [Xtensa] Fixes HW loop pass. Fixes HW loop miscompilation with opt-level = 's'. See esp-rs/rust#164
- [Xtensa] Disables hardware loops by default.
esp-15.0.0-20221201
Changes (since esp-15.0.0-20221014):
Features:
- [Xtensa] Add LLD linker support.
- [Xtensa] Add support for
-mtext-section-literals
option. See description of the same option in GNU assembler. - [Xtensa] Add support of the
-mcmodel=large
option. Currently it just enables-mtext-section-literals
. - Removed dependency on
terminfo
library. Previous release for Linux systems had a dependency onlibtinfo5
which is pretty old version. - Added
nano
versions oflibc
,libm
andlibg
to toolchain.
Bug Fixes:
- [Xtensa] Fixed lowering funnel shift left. Previous implementation generated incorrect Xtensa instruction sequence.
- [Xtensa] Made it possible to use
-fuse-ld
when GCC toolchain is detected. Previosuly toolchain always used GNU xtensa linker.
esp-15.0.0-20221014
Changes (since esp-14.0.0-20220415):
Features:
- Upgrade LLVM version to 15.0.0
- Single toolchain for any Espressif chip (either Xtensa or RISCV architectures)
- Distribution for Linux ARM and ARM64 platforms. Closes #61.
- Distribution for MacOS ARM64 platform. Closes #61.
- Minimal distributions including libraries and headers only to be used by 3rd party tools (e.g. Espressif Rust port)
- Support Espressif vendor in target triple:
xtensa-esp-elf
andriscv32-esp-elf
Bug Fixes:
- [Xtensa] Fixes broken inline assembly memory operands. Closes #58.
- [Xtensa] Expand
addi
instruction with large immediate, toaddmi
+addi
. - [Xtensa] Implement support of
.literal
and.region
directives in assembler parser. - [Xtensa] Add
bbci.l
macro forbbci
instruction andbbsi.l
forbbsi
. - [Xtensa] Fix
ill.n
instruction encoding - [Xtensa] Implement support of the
--sysroot
clang option. Closes #56.
esp-15.0.0-20220922
This is a release candidate.
Features:
- Upgrade LLVM version to 15.0.0
- Single toolchain for any Espressif chip (either Xtensa or RISCV architectures)
- Distribution for Linux ARM and ARM64 platforms. Closes #61.
- Distribution for MacOS ARM64 platform. Closes #61.
- Minimal distributions including libraries and headers only to be used by 3rd party tools (e.g. Espressif Rust port)
- Support Espressif vendor in target triple:
xtensa-esp-elf
andriscv32-esp-elf
Bug Fixes:
- [Xtensa] Fixes broken inline assembly memory operands. Closes #58.
- [Xtensa] Expand
addi
instruction with large immediate, toaddmi
+addi
. - [Xtensa] Implement support of
.literal
and.region
directives in assembler parser. - [Xtensa] Add
bbci.l
macro forbbci
instruction andbbsi.l
forbbsi
. - [Xtensa] Fix
ill.n
instruction encoding - [Xtensa] Implement support of the
--sysroot
clang option. Closes #56.
Known issues:
- [Xtensa] Arguments wider than 32 bits are passed to functions incorrectly
esp-14.0.0-20220415
Changes (since esp-13.0.0-20211203):
- Upgraded to LLVM-14
- Fixed FP compare operations
- Improved multilib support in the Xtensa Clang toolchain
- Fixed Hardware Loop implementation
- Fixed implementation of the atomic swap operations for 8/16 bit operands.
esp-13.0.0-20211203
Changes (since esp-12.0.1-20210914)
- Upgraded to LLVM-13
- Implemented ESP32-S3 target
- Implemented multilib support in the Xtensa Clang toolchain
- Added Xtensa MUL16 instructions
- Fixed ESP32-S2 target
- Fixed FP instructions descriptions, added support of the fma, powf and other FP intrinsics.
- Fixed Hardware Loop implementation
esp-12.0.1-20210914
Changes (since esp-12.0.1-20210823)
- Added
-fno-use-cxa-atexit
to the default compile options (wrapper), to by sync with the GCC toolchain - Added macos-amd64 build
esp-12.0.1-20210823
esp-12.0.1-20210823
esp-11.0.0-20210728
Xtensa based on llvm 11.0.0