@@ -222,6 +222,25 @@ Changes to the Windows Target
222
222
an affinity mask issue.
223
223
(`D138747 <https://reviews.llvm.org/D138747 >`_)
224
224
225
+ * When building LLVM and related tools for Windows with Clang in MinGW mode,
226
+ hidden symbol visiblity is now used to reduce the number of exports in
227
+ builds with dylibs (``LLVM_BUILD_LLVM_DYLIB `` or ``LLVM_LINK_LLVM_DYLIB ``),
228
+ making such builds more manageable without running into the limit of
229
+ number of exported symbols.
230
+
231
+ * AArch64 SEH unwind info generation bugs have been fixed; there were minor
232
+ cases of mismatches between the generated unwind info and actual
233
+ prologues/epilogues earlier in some cases.
234
+
235
+ * AArch64 SEH unwind info is now generated correctly for the AArch64
236
+ security features BTI (Branch Target Identification) and PAC (Pointer
237
+ Authentication Code). In particular, using PAC with older versions of LLVM
238
+ would generate code that would fail to unwind at runtime, if the host
239
+ actually would use the pointer authentication feature.
240
+
241
+ * Fixed stack alignment on Windows on AArch64, for stack frames with a
242
+ large enough allocation that requires stack probing.
243
+
225
244
Changes to the X86 Backend
226
245
--------------------------
227
246
@@ -308,11 +327,20 @@ Changes to the LLVM tools
308
327
* ``llvm-objdump `` now uses ``--print-imm-hex `` by default, which brings its
309
328
default behavior closer in line with ``objdump ``.
310
329
330
+ * ``llvm-objcopy `` no longer writes corrupt addresses to empty sections if
331
+ the input file had a nonzero address to an empty section.
332
+
311
333
Changes to LLDB
312
334
---------------------------------
313
335
314
336
* Initial support for debugging Linux LoongArch 64-bit binaries.
315
337
338
+ * Improvements in COFF symbol handling; previously a DLL (without any other
339
+ debug info) would only use the DLL's exported symbols, while it now also
340
+ uses the full list of internal symbols, if available.
341
+
342
+ * Avoiding duplicate DLLs in the runtime list of loaded modules on Windows.
343
+
316
344
Changes to Sanitizers
317
345
---------------------
318
346
@@ -329,6 +357,12 @@ Other Changes
329
357
would now be ``UNSUPPORTED: target=arm{{.*}} `` and ``XFAIL: windows ``
330
358
would now be ``XFAIL: target={{.*}}-windows{{.*}} ``.
331
359
360
+ * When cross compiling LLVM (or building with ``LLVM_OPTIMIZED_TABLEGEN ``),
361
+ it is now possible to point the build to prebuilt versions of all the
362
+ host tools with one CMake variable, ``LLVM_NATIVE_TOOL_DIR ``, instead of
363
+ having to point out each individual tool with variables such as
364
+ ``LLVM_TABLEGEN ``, ``CLANG_TABLEGEN ``, ``LLDB_TABLEGEN `` etc.
365
+
332
366
External Open Source Projects Using LLVM 15
333
367
===========================================
334
368
0 commit comments