Changes from Git (git http://labmaster3.local/git/llvm-project.git)


  1. [ORC] Add weak symbol support to defineMaterializing, fix for PR40074. (details)
Commit 84217ad66115cc31b184374a03c8333e4578996f by Lang Hames
[ORC] Add weak symbol support to defineMaterializing, fix for PR40074.
The MaterializationResponsibility::defineMaterializing method allows
clients to add new definitions that are in the process of being
materialized to the JIT. This patch adds support to defineMaterializing
for symbols with weak linkage where the new definitions may be rejected
if another materializer concurrently defines the same symbol. If a weak
symbol is rejected it will not be added to the
MaterializationResponsibility's responsibility set. Clients can check
for membership in the responsibility set via the
MaterializationResponsibility::getSymbols() method before resolving any
such weak symbols.
This patch also adds code to RTDyldObjectLinkingLayer to tag COFF comdat
symbols introduced during codegen as weak, on the assumption that these
are COFF comdat constants. This fixes
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Core.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/LLJIT.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/Core.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp