Skip to content

Commit f53ab95

Browse files
committed
[ReleaseNotes]: Add PowerPC release notes for LLVM 16.0.0
1 parent 60692a6 commit f53ab95

File tree

2 files changed

+70
-1
lines changed

2 files changed

+70
-1
lines changed

clang/docs/ReleaseNotes.rst

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -893,6 +893,8 @@ Miscellaneous Bug Fixes
893893

894894
- Fix the bug of inserting the ``ZeroInitializationFixit`` before the template
895895
argument list of ``VarTemplateSpecializationDecl``.
896+
- Fix the bug where Clang emits constrained float intrinsics when specifying
897+
``-ffp-model=strict -ffp-model=fast``.
896898

897899
Miscellaneous Clang Crashes Fixed
898900
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -1065,6 +1067,18 @@ AIX Support
10651067
* When using ``-shared``, the clang driver now invokes llvm-nm to create an
10661068
export list if the user doesn't specify one via linker flag or pass an
10671069
alternative export control option.
1070+
* Driver work done for ``-pg`` to link with the right paths and files.
1071+
1072+
- Improved support for `-bcdtors:mbr` and `-bcdtors:csect` linker flags
1073+
when linking with -fprofile-generate.
1074+
1075+
- Enabled LTO support. Requires AIX 7.2 TL5 SP3 or newer, or AIX 7.3. LTO
1076+
support is implemented with the `libLTO.so` plugin. To specify a
1077+
different plugin, use the linker option `-bplugin:<path to plugin>`.
1078+
To pass options to the plugin, use the linker option `-bplugin_opt:<option>`.
1079+
1080+
- ``-mcpu`` option's values are checked against a list of known CPUs. An error
1081+
is reported if the specified CPU model is not found.
10681082

10691083
WebAssembly Support
10701084
^^^^^^^^^^^^^^^^^^^

llvm/docs/ReleaseNotes.rst

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,8 @@ Changes to the LLVM IR
112112

113113
* Added ``uinc_wrap`` and ``udec_wrap`` operations to ``atomicrmw``.
114114

115+
* Renamed ``llvm.flt.rounds`` intrinsic to ``llvm.get.rounding``.
116+
115117
Changes to building LLVM
116118
------------------------
117119

@@ -192,7 +194,43 @@ Changes to the MIPS Backend
192194
Changes to the PowerPC Backend
193195
------------------------------
194196

195-
* ...
197+
Common PowerPC improvements
198+
^^^^^^^^^^^^^^^^^^^^^^^^^^^
199+
200+
* Supported selecting floating point and 'sync' family of instructions in
201+
GlobalISel PowerPC.
202+
* Comparison operations are now optimized by record form instructions.
203+
* ``__test_data_class`` built-in now accepts ``__float128`` arguments for
204+
Power9 and newer.
205+
* Fixed incorrect fence insertion in atomic FP operations on PowerPC.
206+
* Fixed alignment of aggregate with smaller size than register in variadic
207+
function on PowerPC 64-bit.
208+
* CTR loops on PowerPC are now generated after instruction selection.
209+
* Enabled track-subreg-liveness option by default.
210+
* Store of link register in function prologue are now generated in location
211+
after stack pointer update instructions.
212+
* Code generation improvements for atomic operations, vector permutes, and
213+
constant materialization for some floating point constants.
214+
* Implement new register classes and a number of new instructions for ``mcpu=future``.
215+
* Implement byte reverse instructions, and VSX Scalar Quad Precision compares
216+
for ``mcpu=pwr10``.
217+
* Improved load-store forwarding for big-endian mode.
218+
* Bug fixes.
219+
220+
AIX improvements
221+
^^^^^^^^^^^^^^^^
222+
223+
* Supported TOC-data, overflow section, R_RBR relocation in XCOFF.
224+
* Fixed behavior of function sections, cold attribute, and handling of TLS symbols' name prefixes in XCOFF.
225+
* Fixed redundant spill and reload on AIX 64-bit when paired vector are enabled.
226+
* Disabled location attribution generation of TLS variables.
227+
* Fixed the mapping of built-in functions ``__builtin_frexpl``,
228+
``__builtin_ldexpl``, and ``__builtin_modfl`` to ``libm`` routines in 64-bit
229+
``long double`` mode.
230+
* Implemented ``libunwind`` function ``_Unwind_FindEnclosingFunction`` using
231+
traceback table on AIX.
232+
* Changed to use non-unique implementation for ``typeinfo`` comparison.
233+
* Codegen work done for ``-pg`` to generate correct calls to ``__mcount``.
196234

197235
Changes to the RISC-V Backend
198236
-----------------------------
@@ -322,6 +360,8 @@ When emitting CodeView debug information, LLVM will now emit S_CONSTANT records
322360
for variables optimized into a constant via the SROA and SCCP passes.
323361
(`D138995 <https://reviews.llvm.org/D138995>`_)
324362

363+
``DW_LANG_C11`` now respects ``-gstrict-dwarf`` option.
364+
325365
Changes to the LLVM tools
326366
---------------------------------
327367

@@ -333,12 +373,27 @@ Changes to the LLVM tools
333373
that consume ``llvm-readobj``'s JSON output should update their parsers
334374
accordingly.
335375

376+
* ``llvm-readobj`` now supports a new option ``--loader-section-header`` to
377+
display the loader section header of XCOFF object tiles
378+
379+
* ``llvm-readobj`` now supports a new option ``--loader-section-header`` to
380+
display the symbol table of the loader section of XCOFF object files
381+
382+
* ``llvm-readobj`` now supports a new option ``--loader-section-header`` to
383+
display relocation entries in the loader section of XCOFF object files
384+
385+
* ``llvm-readobj`` now supports a new option ``--exception-section`` to
386+
display exception section entries from XCOFF object files
387+
336388
* ``llvm-objdump`` now uses ``--print-imm-hex`` by default, which brings its
337389
default behavior closer in line with ``objdump``.
338390

339391
* ``llvm-objcopy`` no longer writes corrupt addresses to empty sections if
340392
the input file had a nonzero address to an empty section.
341393

394+
* ``llvm-nm`` now supports the environment variable ``OBJECT_MODE`` for the ``-X``
395+
option on AIX OS
396+
342397
Changes to LLDB
343398
---------------------------------
344399

0 commit comments

Comments
 (0)