Releases: pulp-platform/riscv-gnu-toolchain
Releases · pulp-platform/riscv-gnu-toolchain
v2.6.0
v2.5.0
Added
- gcc: Add
xfhalf
,xfalthalf
,xfhalfinx
andxfhalthalfinx
support. This
means code generation in the backend, libgcc changes to make softfloat
routines set the fcsr, itanium style name mangling rules for and some helper
routines when truncating doubles. - gcc: Add
xfhalf
andxfalthalf
compile test - binutils: Add
xfhalfinx
andxfalthalfinx
support - gdb/sim: Add
xfhalf
andxfhalfinx
support - gdb/sim: Add float and half float tests generated by patched TestFloat-3e
- newlib: Add support for
zfinx
(POSIX fenv)
Changed
- gcc, binutils: Conversion instructions between half float and other float
modes are automatically inferred. Internally, they are stil handled separately
to make changes such as selectively disabling them easier.
Fixed
- binutils: Add fcsr alias instructions for zfinx
- gdb/sim: NaN boxing for floats in double float registers
- gdb/sim: dynamic rounding mode didn't work at all
- gdb/sim: Add RISC-V NaN behavior (canonical NaN instead of complicated rules)
- gcc: Various typos in tests
- gcc: Hardware loops for the
xcorev
target are now disabled (due to wrong
code generation) - gcc: Nested looping code now properly results in nested hardware loop
instructions
v2.4.0
Added
- gcc, binutils, sim: Add support for zfinx and zdinx (rv32 and rv64). Use
zfinx
(replacesf
) andzdinx
(replacesd
). - gcc, binutils: Add basic zfinx/zdinx tests
- Added zfinx multilibs
Changed
- sim: Now uses arch attribute from elf do determine supported extension
Fixed
- gcc: Fix
__builtin_pulp_ClusterId()
and add test - gdb: backported fix for NULL pointer deref when using focus or winheight
command (only happens when using a bleeding edge gcc) - sim: Fix postmod load/store when using the same register as destination and
source.
v2.3.0
Added
- gcc: Add simd complex insn
- gcc: Add pulp specific tests
Changed
- gcc: Generalize simd md patterns
- gcc: builtins are now available depending on enabled subextensions instead of
pulp core version hackery.
Fixed
- gcc: xpulpvect was not working as argument, but xpulpvectall was
- gcc: Fix single standing xpulphwloop arch string
v2.2.0
Added
- gdb/sim: Add pulp vector insn
- gdb/sim: Add bitrev insn
- gdb/sim: Add testsuite
Fixed
- gas: Add p.bitrev and simd complex to pulpv3 and corev
- gdb/sim: Fix clip boundaries
- gdb/sim: Improve error handling
- gcc: V2QI moves
- gcc: Use pv.pack instead of pv.pack.h
Changed
- gdb/sim: Set default simulation model to corev
- gcc: Enable SIMD support. Was functional, but disabled.