[all-commits] [llvm/llvm-project] 81358e: [clang][MinGW] Add asan DLL lib before other libs ...

alvinhochun via All-commits all-commits at lists.llvm.org
Wed Mar 29 04:05:39 PDT 2023

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 81358e9193a9282372c145b63042b2852d3afa18
  Author: Alvin Wong <alvin at alvinhc.com>
  Date:   2023-03-29 (Wed, 29 Mar 2023)

  Changed paths:
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/test/Driver/mingw-sanitizers.c

  Log Message:
  [clang][MinGW] Add asan DLL lib before other libs and objects

As stated in https://github.com/llvm/llvm-project/issues/61685, by
passing LLD the import lib of the asan DLL first, the asan DLL will be
listed as the first entry in the Import Directory Table, making it be
loaded first before other user DLLs. This allows asan to be initialized
as early as possible to increase its instrumentation coverage to include
other DLLs not built with asan.

This also avoids some false asan reports on `realloc` for memory
allocated during initialization of user DLLs being loaded earlier than
asan, because after this change they will be loaded later than asan.

Differential Revision: https://reviews.llvm.org/D146908

More information about the All-commits mailing list