User Details
- User Since
- Dec 7 2016, 2:42 PM (364 w, 3 d)
Jan 18 2022
Looks good to me.
Nov 30 2021
Nov 29 2021
May 20 2021
Addressed review comments.
Addressed review comments.
May 19 2021
Applied code review suggestions.
May 18 2021
Addressed review comments.
Addressed review comments.
I agree that it would be better to create a single LIT test for a file name beginning with dash, but it is not clear how to write it. I assume such test would require use of %T (directory of a %t), but according to the documentation it is deprecated now. So, I decided to follow the same strategy for testing this patch as was used in a similar llvm-rc change (D56743) - updating few arbitrary tests to use ‘--’ separator for the file names. If you have ideas how to write a test for a file name beginning with ‘-‘, please share.
May 17 2021
Apr 12 2021
With this change OMPIRBuilder may produce invalid IR if existing function attributes conflict with the new attributes it is trying to add. The problem can be reproduced on llvm/test/Transforms/OpenMP/gpu_state_machine_function_ptr_replacement.ll test where __kmpc_global_thread_num function is declared with the following attributes
Jan 25 2021
Addressed review comments.
Jan 24 2021
Jan 23 2021
Jan 22 2021
Given the langref text I'm unsure what it means to link an append linkage variable to a non-append linkage one. I can see how extern is different but what would happen before & now if you remove the extern.
Jan 21 2021
Jan 19 2021
ping
Jan 14 2021
Addressed review comment.
Jan 13 2021
Jan 5 2021
Jan 4 2021
Dec 28 2020
Dec 22 2020
Well, it looks like nobody is going to respond.
Dec 18 2020
Dec 14 2020
ping
Dec 10 2020
Updated diff after committing NFC changes (D92918).
Dec 9 2020
I wonder if we want to go even further and bring archive linking closer to how static linking works with normal object files?
Instead of linking all files in the archive together (that may have its own set of issues) and returning a single module, perhaps we should just load individual files, return them as a vector and link each of them in order with --only-needed.
Well, when you use a class you have to know the interface it defines, so this is not about the implementation details, but about the interface provided by the class. llvm::Linker::linkModules(), as it is defined today, is a static member of the class, so it does not require an instance of llvm::Linker class to be called. Adding an additional parameter to loadArFile just in case does not buy as anything at all except unneeded redundancy. And, by the way, this function is called as a static member (i.e. Linker::linkModules()) everywhere in LLVM sources except llvm-link.cpp:
Dec 8 2020
I have prepared a separate patch for NFC changes D92918. Will update this patch once D92918 is approved.
Dec 7 2020
Do you have any comments for this patch?
Dec 3 2020
I have realized that this patch is not NFC, and it corrects llvm-link behavior when archive is linked with other inputs as a library (with --only-needed option). I have updated description and added LIT test to the patch.
Dec 2 2020
Added BinaryFormat to the list of components that need to be linked.
Dec 1 2020
Nov 24 2020
Nov 12 2020
Jul 27 2020
Added unit test for the CallGraphNode::replaceCallEdge() change. Without this change test finishes with an assertion on windows debug build.
Jul 22 2020
Yes, exactly. If the number of callbacks is the same we can avoid invalidating iterators. I assume that should really cover most of the cases.
Jul 13 2020
LGTM
Jul 1 2020
Jun 28 2020
Rebase after committing NFC patch (D82686).
Jun 26 2020
Sure, I have separated NFC changes to D82686.