[11.0.0 Release] Please help writing release notes!

Hello everyone,

With the release drawing near, it would be great to get the release
notes into better shape.

You can see the notes from rc2 online here:

The release notes are typically the first thing people look at after
the release, so it's a great opportunity to highlight the work that's
been done since the last release.

If you can think of anything interesting that happened over the last
six months, please consider adding to the notes by sending me a patch,
committing directly to the notes on the release/11.x branch, or just
sending me some text in an email.


Hi Hans,

Here are the PowerPC release notes for 11.0.0:


  • Improved Loop Unroll-and-Jam legality checks, allowing it to handle more than two level loop nests
  • Improved Loop Unroll to be able to unroll more loops
  • Implemented an option to allow loop fusion to work on loops with different constant trip counts


  • POWER10 support
    • Added PC Relative addressing
    • Added __int128 vector bool support
  • Security enhancement via probe-stack attribute support to protect against stack clash
  • Floating point support enhancements
    • Improved half precision and quad precision support, including GLIBC
    • constrained FP operation support for arithmetic/rounding/max/min
    • cleaning up fast math flags checks in DAGCombine, Legalizer, and Lowering
  • Performance improvements from instruction exploitation, especially for vector permute on LE
  • Scheduling enhancements
    • Added MacroFusion for POWER8
    • Added post-ra heuristics for POWER9
  • Target dependent passes tuning
    • Updated LoopStrengthReduce to use instruction number as first priority
    • Enhanced MachineCombiner to expose more ILP
  • Code quality and maintenance enhancements
    • Enabled more machine verification passes
    • Added ability to parse and emit additional extended mnemonics
    • Numerous bug fixes

AIX Support Improvements:

  • Enabled compile and link such that a simple <stdio.h> “Hello World” program works with standard headers
  • Added support for the C calling convention for non-vector code
  • Implemented correct stack frame layout for functions
  • In llvm-objdump, added support for relocations, improved selection of symbol labels, and added the --symbol-description option


Ahsan Saghir.

Thanks! Committed in 158581772fc8f3d6c601ceba14a08285e46cb7e9

Hi Hans,

Apologies if I got here too late, but just in case I didn’t here are some JIT release notes for 11.0.0:

  • LLJIT now supports execution of static inits / deinits via the LLJIT::initialize and LLJIT::deinitialize methods
  • Static libraries can now be added to a JITDylib using the StaticLibraryDefinitionGenerator class
  • A C API has been added for OrcV2 (llvm-project/llvm/include/llvm-c/Orc.h)
  • Several OrcV2 example projects have been added to llvm-project/llvm/examples/OrcV2Examples
  • Many bug fixes and API improvements

– Lang.

Committed to 11.x as b6efbd6b5f22d0a251d2fba9a5d24ac21760b1cc. Thanks!

Hi Hans,

I think that for ARM we can add a word on the support of the Machine
Outliner, maybe something like:

* The Machine Outliner is now supported for ARM and Thumb2, it is not
turned on by default and can be enabled with the -moutline clang flag


Thanks, added in f80e6d63423008ca24aa5d5d9939d0e35a2d7d02,