llvm-capstone/lld/MachO
Ellis Hoag 30e688e6d0
[lld][MachO] Add option to suppress mismatch profile errors (#65551)
Both ELF and COFF support `--no-lto-pgo-warn-mismatch` in
https://reviews.llvm.org/D104431 to suppress warnings due to mismatching
profile hashes. As profiles go stale, it becomes likely that some
function's CFGs will change so that their profiles can no longer be
used. This commit adds the linker option `--no-pgo-warn-mismatch` to
suppress these warnings.

Note that we do have the LLVM backend flag `no-pgo-warn-mismatch`
3df1a64eba/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp (L210)

but that is set to true by default during LTO
3df1a64eba/llvm/include/llvm/LTO/Config.h (L76-L77)
2023-09-11 09:13:55 -07:00
..
Arch [lld] StringRef::{starts,ends}with => {starts,ends}_with. NFC 2023-06-05 14:36:19 -07:00
CMakeLists.txt [lld-macho] Remove linking bitcode support 2023-05-30 14:47:11 -07:00
ConcatOutputSection.cpp [lld-macho] Remove partially supported 32-bit ARM arch 2023-05-20 13:06:03 -07:00
ConcatOutputSection.h [lld/mac] Use C++17 nested namespace syntax in most places 2022-08-08 07:11:17 -04:00
Config.h [lld][MachO] Add option to suppress mismatch profile errors (#65551) 2023-09-11 09:13:55 -07:00
Driver.cpp [lld][MachO] Add option to suppress mismatch profile errors (#65551) 2023-09-11 09:13:55 -07:00
Driver.h [lld-macho] Postprocess LC Linker Option 2023-08-13 13:39:04 -07:00
DriverUtils.cpp Reapply "[Option] Add "Visibility" field and clone the OptTable APIs to use it" 2023-08-15 01:16:58 -07:00
Dwarf.cpp [lld-macho] Support creating N_SO stab for DWARF5 compile units 2022-07-28 09:58:26 +02:00
Dwarf.h [lld] Change Optional to std::optional 2022-11-27 17:25:34 -08:00
EhFrame.cpp [lld-macho] Support EH frame pointer encodings that use sdata4 2022-07-31 20:16:33 -04:00
EhFrame.h [lld-macho] Change most Optional to std::optional 2022-11-27 16:54:07 -08:00
ExportTrie.cpp [lld-macho] Support re-exports of individual symbols 2023-03-27 16:39:37 -04:00
ExportTrie.h [lld/mac] Use C++17 nested namespace syntax in most places 2022-08-08 07:11:17 -04:00
ICF.cpp [lld-macho] Switch to xxh3_64bits 2023-07-19 09:58:44 -07:00
ICF.h [lld/mac] Use C++17 nested namespace syntax in most places 2022-08-08 07:11:17 -04:00
InputFiles.cpp [lld-macho] Stricter Bitcode Symbol Resolution 2023-08-22 12:03:17 -07:00
InputFiles.h [lld-macho] Stricter Bitcode Symbol Resolution 2023-08-22 12:03:17 -07:00
InputSection.cpp [lld-macho] Switch to xxh3_64bits 2023-07-19 09:58:44 -07:00
InputSection.h [lld-macho][re-land] Warn on method name collisions from category definitions 2023-03-30 14:33:42 -04:00
Layout.h [lld-macho][re-land] Warn on method name collisions from category definitions 2023-03-30 14:33:42 -04:00
LTO.cpp [lld][MachO] Add option to suppress mismatch profile errors (#65551) 2023-09-11 09:13:55 -07:00
LTO.h [lld-macho] Avoid running LTO pipeline for no files 2023-03-03 15:28:59 -08:00
MachOStructs.h [lld/mac] Use C++17 nested namespace syntax in most places 2022-08-08 07:11:17 -04:00
MapFile.cpp [lld-macho] Don't include zero-size private label symbols in map file 2023-03-11 01:40:14 -05:00
MapFile.h [lld/mac] Use C++17 nested namespace syntax in most places 2022-08-08 07:11:17 -04:00
MarkLive.cpp [lld-macho][nfc] Clean up includes 2022-10-19 13:56:24 -04:00
MarkLive.h [lld/mac] Use C++17 nested namespace syntax in most places 2022-08-08 07:11:17 -04:00
ObjC.cpp [lld] StringRef::{starts,ends}with => {starts,ends}_with. NFC 2023-06-05 14:36:19 -07:00
ObjC.h [lld-macho][re-land] Warn on method name collisions from category definitions 2023-03-30 14:33:42 -04:00
Options.td [lld][MachO] Add option to suppress mismatch profile errors (#65551) 2023-09-11 09:13:55 -07:00
OutputSection.cpp [lld-macho][nfc] Run clang-format on lld/MachO/*.{h,cpp} 2022-05-24 08:36:20 +07:00
OutputSection.h [lld/mac] Use C++17 nested namespace syntax in most places 2022-08-08 07:11:17 -04:00
OutputSegment.cpp [lld-macho] Fix __objc_stubs ordering 2022-12-13 13:23:27 -08:00
OutputSegment.h [lld-macho] Set the SG_READ_ONLY flag on __DATA_CONST 2022-08-31 17:04:20 +02:00
Relocations.cpp [lld-macho][re-land] Warn on method name collisions from category definitions 2023-03-30 14:33:42 -04:00
Relocations.h [lld-macho][re-land] Warn on method name collisions from category definitions 2023-03-30 14:33:42 -04:00
SectionPriorities.cpp [lld] std::optional::value => operator*/operator-> 2022-12-17 03:19:47 +00:00
SectionPriorities.h [lld-macho] Change most Optional to std::optional 2022-11-27 16:54:07 -08:00
Symbols.cpp reland: [Demangle] make llvm::demangle take std::string_view rather than const std::string& 2023-06-06 10:18:06 -07:00
Symbols.h [lld-macho] Fixed crashes when linking with incompatible-arch archives/ 2023-08-04 09:25:59 -04:00
SymbolTable.cpp [lld-macho] Stricter Bitcode Symbol Resolution 2023-08-22 12:03:17 -07:00
SymbolTable.h [lld-macho] Remove partially supported 32-bit ARM arch 2023-05-20 13:06:03 -07:00
SyntheticSections.cpp [lld-macho]Use install_name as Identifier for code-sign, if available. 2023-07-19 14:19:15 -04:00
SyntheticSections.h [lld-macho] Remove linking bitcode support 2023-05-30 14:47:11 -07:00
Target.cpp
Target.h [lld-macho] Remove partially supported 32-bit ARM arch 2023-05-20 13:06:03 -07:00
UnwindInfoSection.cpp [Support] Change MapVector's default template parameter to SmallVector<*, 0> 2023-07-24 22:04:03 -07:00
UnwindInfoSection.h [lld-macho][nfc] Clean up includes 2022-10-19 13:56:24 -04:00
Writer.cpp [lld-macho] Use fixed chunk size for UUID 2023-07-19 17:24:36 -07:00
Writer.h [lld/mac] Use C++17 nested namespace syntax in most places 2022-08-08 07:11:17 -04:00