1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 02:33:06 +01:00
llvm-mirror/include/llvm
serge-sans-paille 601c2dd9dd Fine grain control over some symbol visibility
Setting -fvisibility=hidden when compiling Target libs has the advantage of
not being intrusive on the codebase, but it also sets the visibility of all
functions within header-only component like ADT. In the end, we end up with
some symbols with hidden visibility within llvm dylib (through the target libs),
and some with external visibility (through other libs). This paves the way for
subtle bugs like https://reviews.llvm.org/D101972

This patch explicitly set the visibility of some classes to `default` so that
`llvm::Any` related symbols keep a `default` visibility. Indeed a template
function with `default` visibility parametrized by a type with `hidden`
visibility is granted `hidden` visibility, and we don't want this for the
uniqueness of `llvm::Any::TypeId`.

Differential Revision: https://reviews.llvm.org/D108943
2021-09-08 21:06:19 -07:00
..
ADT Add llvm::equal convenient wrapper for ranges around std::equal 2021-07-28 00:10:22 +00:00
Analysis Fine grain control over some symbol visibility 2021-09-08 21:06:19 -07:00
AsmParser [AsmParser] Remove MDRef (NFC) 2021-07-26 08:29:33 -07:00
BinaryFormat Reland: "[WebAssembly] Deduplicate imports of the same module name, field name, and type" 2021-07-22 14:16:05 -07:00
Bitcode [IR] Add elementtype attribute 2021-07-15 18:04:26 +02:00
Bitstream BitstreamWriter.h - add missing implicit MathExtras.h header dependency. NFCI. 2021-06-05 19:20:14 +01:00
CodeGen Fine grain control over some symbol visibility 2021-09-08 21:06:19 -07:00
Config Move the definition of LLVM_SUPPORT_XCODE_SIGNPOSTS into llvm-config.h 2021-06-16 14:40:37 -07:00
DebugInfo [Debug-Info][llvm-dwarfdump] Don't try to dump location 2021-07-27 07:28:59 +00:00
Demangle [demangler] Fix demangling of 'half' 2021-07-19 21:21:34 +01:00
DWARFLinker [dsymutil] Add flag to force a static variable to keep its enclosing function 2021-04-28 11:33:04 -07:00
DWP [DWP] Refactoring llvm-dwp in to a library part 2 2021-07-22 14:23:29 -07:00
ExecutionEngine [ORC] Require ExecutorProcessControl when constructing an ExecutionSession. 2021-07-27 16:53:49 +10:00
FileCheck [FileCheck] Fix numeric error propagation 2021-03-17 19:25:41 -04:00
Frontend [mlir][openacc] Initial translation for DataOp to LLVM IR 2021-07-27 22:04:04 -04:00
FuzzMutate
InterfaceStub [ifs][elfabi] Merge llvm-ifs/elfabi tools 2021-07-19 11:23:19 -07:00
IR Fine grain control over some symbol visibility 2021-09-08 21:06:19 -07:00
IRReader
LineEditor
Linker
LTO [LTO] Add SelectionKind to IRSymtab and use it in ld.lld/LLVMgold 2021-07-20 13:22:00 -07:00
MC [SystemZ][z/OS] Initial code to generate assembly files on z/OS 2021-07-27 11:29:15 -04:00
MCA [MCA] Anchoring the vtable of CustomBehaviour 2021-06-16 12:43:58 -07:00
Object [LTO] Add SelectionKind to IRSymtab and use it in ld.lld/LLVMgold 2021-07-20 13:22:00 -07:00
ObjectYAML [yaml2obj][MachO] Rename PayloadString to Content 2021-07-26 09:04:51 -07:00
Option [OptTable] Rename PrintHelp to printHelp 2021-06-24 14:47:03 -07:00
Passes [NewPM] Print pre-transformation IR name in --print-after-all 2021-07-20 10:20:10 -07:00
ProfileData [profile] Fix profile merging with binary IDs 2021-08-12 22:46:22 -07:00
Remarks
Support [AArch64] Add a Machine Value Type for 8 consecutive registers 2021-08-02 15:45:58 +01:00
TableGen [TableGen] Fix two bugs in 'defm' when complex 'assert' is involved. 2021-04-30 11:31:06 -04:00
Target [GlobalISel] Add a constant folding combine. 2021-07-26 14:53:33 -07:00
Testing/Support added some example code for llvm::Expected<T> 2021-07-01 09:57:20 +00:00
TextAPI [TextAPI] add symbol name prefixes to central location, NFC 2021-06-23 11:21:00 -07:00
ToolDrivers
Transforms [DebugInfo][LoopStrengthReduction] SCEV-based salvaging for LSR 2021-08-05 10:34:33 +01:00
WindowsManifest
WindowsResource
XRay
CMakeLists.txt
InitializePasses.h Add jump-threading optimization for deterministic finite automata 2021-07-27 14:34:04 -04:00
LinkAllIR.h
LinkAllPasses.h Add jump-threading optimization for deterministic finite automata 2021-07-27 14:34:04 -04:00
module.extern.modulemap
module.install.modulemap
module.modulemap Revert "[build][modules] Fix ObjCARCUtil.h modularization" 2021-03-09 09:36:47 -08:00
module.modulemap.build
Pass.h
PassAnalysisSupport.h
PassInfo.h
PassRegistry.h
PassSupport.h