[PATCH] D78221: [COFF] Assign unique identifiers to ObjFiles from LTO
Reid Kleckner via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 17 17:31:25 PDT 2020
rnk added a comment.
Apparently I didn't hit send...
================
Comment at: lld/COFF/LTO.cpp:210
+ objBuf = buf[i];
+ if (objBuf.empty())
continue;
----------------
MaskRay wrote:
> When can `objBuf` be empty?
This is meant to preserve existing behavior from the original split loops. In the case where neither `buf` nor `files` contains an object, no input file was added. I assume that this can happen if there was an error during code generation.
---
Also, it occurs to me that split loops from before were reordering the native object files for the final link, which seems like asking non-determinism: if the object is found in the cache, it gets added later. This could be a serious cache bug fix...
================
Comment at: lld/test/COFF/pdb-thinlto.ll:31
+
+; CHECK: Modules
+; CHECK: ============================================================
----------------
MaskRay wrote:
> Delete trailing spaces (invisible on Phabricator)
Speaking of oddities in the dump output, I wish it wouldn't print trailing spaces. =P
================
Comment at: lld/test/COFF/pdb-thinlto.ll:33
+; CHECK: ============================================================
+; CHECK: Mod 0000 | `{{.*}}main.exe.lto.obj`:
+; CHECK: Obj: `{{.*}}main.exe.lto.obj`:
----------------
MaskRay wrote:
> You may indent `Mod 0000` by 2 spaces to reflect the actual output... but why does llvm-pdbutil print two spaces only for `Mod 0000`?
I think the extra spaces in the real output are a bug, I would prefer to see the output as I have it here.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D78221/new/
https://reviews.llvm.org/D78221
More information about the llvm-commits
mailing list