17 Dec, 2020

1 commit

  • With CONFIG_LTO_CLANG, LLVM bitcode has not yet been compiled into a
    binary when the .mod files are generated, which means they don't yet
    contain references to certain symbols that will be present in the final
    binaries. This includes intrinsic functions, such as memcpy, memmove,
    and memset [1], and stack protector symbols [2]. This change adds a
    default symbol list to use with CONFIG_TRIM_UNUSED_KSYMS when Clang's
    LTO is used.

    [1] https://llvm.org/docs/LangRef.html#standard-c-c-library-intrinsics
    [2] https://llvm.org/docs/LangRef.html#llvm-stackprotector-intrinsic

    Bug: 145210207
    Change-Id: I9da92fba820c72633209e292fdc6f1c44abe7b9a
    Link: https://lore.kernel.org/lkml/20201211184633.3213045-7-samitolvanen@google.com/
    Signed-off-by: Sami Tolvanen

    Sami Tolvanen