[all-commits] [llvm/llvm-project] dd33f5: [Flang][Driver] Added support for -funique-interna...
Kaviya Rajendiran via All-commits
all-commits at lists.llvm.org
Wed Sep 23 05:47:58 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: dd33f57479c1d1d86649a1867b79be88ce04da73
https://github.com/llvm/llvm-project/commit/dd33f57479c1d1d86649a1867b79be88ce04da73
Author: Kaviya Rajendiran <67495422+kaviya2510 at users.noreply.github.com>
Date: 2026-09-23 (Wed, 23 Sep 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Lower/Bridge.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/CompilerGeneratedNames.cpp
M flang/lib/Optimizer/Transforms/FunctionAttr.cpp
A flang/test/Driver/funique-internal-linkage-names.f90
A flang/test/Lower/unique-internal-linkage-names.f90
A flang/test/Transforms/function-attrs-unique-internal-linkage-names.fir
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
A mlir/test/Target/LLVMIR/Import/sample-profile-suffix-elision-policy.ll
A mlir/test/Target/LLVMIR/sample-profile-suffix-elision-policy.mlir
Log Message:
-----------
[Flang][Driver] Added support for -funique-internal-linkage-names option (#216680)
The option `-funique-internal-linkage-names` appends an MD5 hash suffix
`(.__uniq.<hash>)` to internal procedure names and sets
`"sample-profile-suffix-elision-policy"="selected"` on those functions,
enabling the sample profiler to correctly match profiles to internal
procedures across compilation units.
Implementation:
- Added a unique hash suffix to internal procedure names when
`-funique-internal-linkage-names` is enabled. The suffix is derived from
the source file path and disambiguates identically named internal
procedures across different compilation units, which helps accurate
sample-based profiling.
- Added the function attribute
`"sample-profile-suffix-elision-policy"="selected"` on internal
procedures in LLVM IR. This attribute is used by the LLVM sample profile
loader to control suffix stripping during profile matching
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list