@@ -273,6 +273,10 @@ Non-comprehensive list of changes in this release
273
273
types. This allows access to ``llvm.nearbyint `` for arbitrary
274
274
floating-point and vector of floating-point types.
275
275
- Clang AST matcher now matches concept declarations with `conceptDecl `.
276
+ - Clang now supports more GCC stdio builtins: ``__builtin_vprintf ``, ``__builtin_vfprintf ``,
277
+ ``__builtin_fscanf ``, ``__builtin_scanf ``, ``__builtin_sscanf ``, ``__builtin_vfscanf ``,
278
+ ``__builtin_vscanf ``, ``__builtin_vsscanf ``.
279
+
276
280
277
281
New Compiler Flags
278
282
------------------
@@ -293,7 +297,11 @@ New Compiler Flags
293
297
- ``-print-multi-flags-experimental `` prints the flags used for multilib
294
298
selection. See `the multilib docs <https://clang.llvm.org/docs/Multilib.html >`_
295
299
for more details.
296
-
300
+ - ``-maix32 `` and ``-maix64 `` are new GCC compatibility flags that select the
301
+ bitmode to target on AIX.
302
+ - ``-p `` is a new GCC compatibility flag for AIX and Linux which works
303
+ similarly to ``-pg `` by writing profile information, but targets the ``prof ``
304
+ tool as opposed to the ``gprof `` tool.
297
305
298
306
Deprecated Compiler Flags
299
307
-------------------------
@@ -713,6 +721,14 @@ Bug Fixes in This Version
713
721
The current solution may bring performance regressions if the awaiters have
714
722
non-static data members. See
715
723
`#64945 <https://github.com/llvm/llvm-project/issues/64945 >`_ for details.
724
+ - Clang now correctly diagnoses ``function_needs_feature `` when always_inline
725
+ callee has incompatible target features with caller.
726
+ - Removed the linking of libraries when ``-r `` is passed to the driver on AIX.
727
+ - Fixed an Itanium ABI bug where we force exactly two-byte alignment on member
728
+ functions to reserve a bit in function pointers for identifying pointers to
729
+ virtual member functions even if the target required a greater function
730
+ alignment and/or did not have function pointers which point to function entry
731
+ points (i.e., uses function descriptor objects instead).
716
732
717
733
Bug Fixes to Compiler Builtins
718
734
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -991,10 +1007,19 @@ CUDA Support
991
1007
992
1008
AIX Support
993
1009
^^^^^^^^^^^
994
- - Add an AIX-only link-time option, `-mxcoff-build-id=0xHEXSTRING `, to allow users
995
- to embed a hex id in their binary such that it's readable by the program itself.
996
- This option is an alternative to the `--build-id=0xHEXSTRING ` GNU linker option
997
- which is currently not supported by the AIX linker.
1010
+ - Enabled ThinLTO support. Minimum OS requirement is AIX 7.2 TL5 SP6 or
1011
+ the upcoming AIX 7.3 TL2.
1012
+
1013
+ - Enabled integrated assembler (``-f[no-]integrated-as ``) for LTO. LTO now
1014
+ defaults to the integrated assembler.
1015
+
1016
+ - Enabled Clang-based instrumented profiling
1017
+ (``-fprofile-instr-[generate|use] ``).
1018
+
1019
+ - Added an AIX-only link-time option, ``-mxcoff-build-id=0xHEXSTRING ``, to allow
1020
+ users to embed a hex id in their binary such that it's readable by the program
1021
+ itself. This option is an alternative to the ``--build-id=0xHEXSTRING `` GNU
1022
+ linker option, which is currently not supported by the AIX linker.
998
1023
999
1024
- Introduced the ``-mxcoff-roptr `` option to place constant objects with
1000
1025
relocatable address values in the read-only data section. This option should
@@ -1003,6 +1028,14 @@ AIX Support
1003
1028
read-only data sections with relocatable address values that resolve to
1004
1029
imported symbols are made writable.
1005
1030
1031
+ - Implemented the ``-frecord-command-line `` option on AIX, which saves the
1032
+ command-line options used from compiling a source file to the corresponding
1033
+ object file or binary file.
1034
+
1035
+ - Added a new linker option, ``-K ``, that is used to align the header, text,
1036
+ data, and loader sections of the output file so that each section begins on
1037
+ a page boundary.
1038
+
1006
1039
WebAssembly Support
1007
1040
^^^^^^^^^^^^^^^^^^^
1008
1041
- Shared library support (and PIC code generation) for WebAssembly is no longer
@@ -1019,6 +1052,11 @@ AVR Support
1019
1052
of ``USHRT_MAX `` is now ``unsigned int `` instead of ``int ``, as required by
1020
1053
the C standard.
1021
1054
1055
+ PowerPC Support
1056
+ ^^^^^^^^^^^^^^^
1057
+ - Clang now emits errors when it detects incompatible target features for
1058
+ PowerPC builtins.
1059
+
1022
1060
DWARF Support in Clang
1023
1061
----------------------
1024
1062
0 commit comments