Skip to content

Commit 7e3ebf3

Browse files
committed
[RISCV] Update RISC-V Release Notes for LLVM
This corrects some typos and clarifies some points.
1 parent 38ee10d commit 7e3ebf3

File tree

1 file changed

+16
-11
lines changed

1 file changed

+16
-11
lines changed

llvm/docs/ReleaseNotes.rst

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -260,8 +260,8 @@ Changes to the RISC-V Target
260260
----------------------------
261261

262262
New Features:
263-
* The Machine Outliner has been enabled.
264-
* Shrink-wrapping has been enabled.
263+
* The Machine Outliner is now supported, but not enabled by default.
264+
* Shrink-wrapping is now supported.
265265
* The Machine Scheduler has been enabled and scheduler descriptions for the
266266
Rocket micro-architecture have been added, covering both 32- and 64-bit Rocket
267267
cores.
@@ -276,9 +276,12 @@ New Features:
276276
the assembler for use in legacy code.
277277
* The stack can now be realigned even when there are variable-sized objects in
278278
the same frame.
279-
* fastcc is now supported.
279+
* fastcc is now supported. This is a more efficient, unstandardised, calling
280+
convention for calls to private leaf functions in the same IR module.
280281
* llvm-objdump now supports `-M no-aliases` and `-M numeric` for altering the
281-
dumped assembly. These match the behaviour of GNU objdump.
282+
dumped assembly. These match the behaviour of GNU objdump, respectively
283+
disabling instruction aliases and printing the numeric register names rather
284+
than the ABI register names.
282285

283286
Improvements:
284287
* Trap and Debugtrap now lower to RISC-V-specific trap instructions.
@@ -289,20 +292,19 @@ Improvements:
289292
* The assembler now suggests spelling corrections for unknown assembly
290293
mnemonics.
291294
* Stack offsets of greater than 32-bits are now accepted on RV64.
292-
* Some variadic functions can now be tail-call optimised.
293-
* We now custom-lower 32-bit arithmetic operations on RV64 to reduce
294-
sign-extensions.
295-
295+
* Variadic functions can now be tail-call optimised, as long as they do not use
296+
stack memory for passing arguments.
297+
* Code generation has been changed for 32-bit arithmetic operations on RV64 to
298+
reduce sign-extensions.
296299

297300
Bug Fixes:
298-
299301
* There was an issue with register preservation after calls in interrupt
300302
handlers, where some registers were marked as preserved even though they were
301303
not being preserved by the call. This has been corrected, and now only
302304
callee-saved registers are live over a function call in an interrupt handler
303305
(just like calls in regular functions).
304306
* Atomic instructions now only accept GPRs (plus an offset) in memory operands.
305-
* Fixed some issues with evalutaion of relocations and fixups.
307+
* Fixed some issues with evaluation of relocations and fixups.
306308
* The error messages around missing RISC-V extensions in the assembler have been
307309
improved.
308310
* The error messages around unsupported relocations have been improved.
@@ -314,7 +316,10 @@ Bug Fixes:
314316
* RV64 no longer clears the upper bits when returning complex types from
315317
libcalls using the LP64 psABI.
316318

317-
319+
Compiler-RT:
320+
* RISC-V (both 64-bit and 32-bit) is now supported by compiler-rt, allowing
321+
crtbegin and crtend to be built.
322+
* The Sanitizers now support 64-bit RISC-V on linux.
318323

319324
Changes to the OCaml bindings
320325
-----------------------------

0 commit comments

Comments
 (0)