================
@@ -300,12 +316,8 @@ getIRPGONameForGlobalObject(const GlobalObject &GO,
                             GlobalValue::LinkageTypes Linkage,
                             StringRef FileName) {
   SmallString<64> Name;
-  if (llvm::GlobalValue::isLocalLinkage(Linkage)) {
-    Name.append(FileName.empty() ? "<unknown>" : FileName);
-    Name.append(";");
-  }
   Mangler().getNameWithPrefix(Name, &GO, /*CannotUsePrivateLabel=*/true);
----------------
minglotus-6 wrote:

>  I think it makes more sense to use linkage-names for IRPGO, -order_file, and 
> ThinLTO. -order_file is used in the linker when it only knows linkage-names, 
> so I don't think it makes sense to feed it mangled names.

Thanks for the input.  (not to bikeshed but) I think for the purpose of 
computing global identifier, unique names should suffice. Clang-FE mangled 
names are unique so sounds fine.

Using linkage-name would be a non-trivial change, given the static 
`getGlobalIdentifier` takes a stringified name currently, and using 
linkage-name means requiring compatible change in each callsite (e.g., if the 
caller context doesn't have `GlobalValue` but just stringified names in the 
bitcode, make sure linkage-name exists in the bitcode, 
[this](https://github.com/llvm/llvm-project/blob/d6fbd96e5eaf3e8acbf1b43dce7a311352907567/llvm/lib/Bitcode/Reader/BitcodeReader.cpp#L6763)
 seems one example). An alternative fixup is to store the MD5 of 
`[filename;]linkage-name` (this is what's currently stored in this 
[field](https://github.com/llvm/llvm-project/blob/0f45e45847a5f2969b8021c787a566531fc96473/compiler-rt/include/profile/InstrProfData.inc#L72-L74))
 and the MD5 of `[filename:]mangled-name` (the original hash before D156569) in 
the raw profiles, so `llvm-profdata` could choose properly (former for ordering 
and latter for ICP)

Would you mind if I create a Github issue to track how to fix other potential 
cases and assign it to you ? This PR would solve the colon and semicolon 
difference.

https://github.com/llvm/llvm-project/pull/74008
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to