llvm-project/llvm/lib
Rafael Espindola 3b9843f0ff Allow dso_local on ifunc.
It was never fully disallowed. We were rejecting it in the asm parser,
but not in the verifier.

Currently TargetMachine::shouldAssumeDSOLocal returns true for hidden
ifuncs. I considered changing it and moving the check from the asm
parser to the verifier.

The reason for deciding to allow it instead is that all linkers handle
a direct reference just fine. They use the plt address as the address
of the function. In fact doing that means that clang doesn't have the
same bug as gcc: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83782.

This patch then removes the check from the asm parser and updates the
bitcode reader and writer.

llvm-svn: 322378
2018-01-12 17:03:43 +00:00
..
Analysis [InstSimplify] fold implied cmp with zero (PR35790) 2018-01-11 23:27:37 +00:00
AsmParser Allow dso_local on ifunc. 2018-01-12 17:03:43 +00:00
BinaryFormat Simplify. 2017-10-19 01:32:18 +00:00
Bitcode Allow dso_local on ifunc. 2018-01-12 17:03:43 +00:00
CodeGen [ARM GlobalISel] Legalize G_FMA 2018-01-12 11:30:45 +00:00
DebugInfo dwarfdump: Match the --uuid output with that of Darwin dwarfdump. 2018-01-05 21:44:17 +00:00
Demangle Silence a bunch of implicit fallthrough warnings 2017-12-19 22:05:25 +00:00
ExecutionEngine Instead of ELFFile<ELFT>::Type, use ELFT::Type. NFC. 2018-01-12 02:28:31 +00:00
FuzzMutate [FuzzMutate] Don't crash when mutator is unable to find operation 2017-12-19 08:52:51 +00:00
Fuzzer [libFuzzer] Delete llvm/lib/Fuzzer 2017-10-16 20:48:19 +00:00
IR Make internal/private GVs implicitly dso_local. 2018-01-11 22:15:05 +00:00
IRReader Remove redundant includes from various places. 2017-12-13 21:31:03 +00:00
LTO [LTO] Simplify code. No functionality change intended. 2017-12-28 18:31:19 +00:00
LineEditor
Linker Fix crash when linking metadata with ODR type uniquing 2018-01-09 18:32:53 +00:00
MC [WebAssembly] MC: Remove SetUsed argument when calling MCSymbol::isDefined et al 2018-01-11 23:59:16 +00:00
Object [WebAssembly] Don't allow functions to be named twice 2018-01-12 02:11:31 +00:00
ObjectYAML [WebAssembly] Add COMDAT support 2018-01-09 23:43:14 +00:00
Option [Option] For typo '-foo', suggest '--foo' 2018-01-09 19:38:04 +00:00
Passes Add a pass to generate synthetic function entry counts. 2018-01-09 19:39:35 +00:00
ProfileData Remove superfluous copies in sample profiling. 2017-12-28 18:10:41 +00:00
Support [TargetParser] Add missing armv8l ARMv8 variant. 2018-01-09 17:49:25 +00:00
TableGen Avoid int to string conversion in Twine or raw_ostream contexts. 2017-12-28 16:58:54 +00:00
Target [PowerPC] Don't miscompile rotate+mask into an ANDIo if it can't recreate the immediate 2018-01-12 15:03:24 +00:00
Testing Force #define GTEST_LANG_CXX11. 2017-10-27 21:12:28 +00:00
ToolDrivers Remove redundant includes from various places. 2017-12-13 21:31:03 +00:00
Transforms [IRCE][NFC] Make range check's End a non-null SCEV 2018-01-12 10:00:26 +00:00
WindowsManifest Fix bug 34608 by moving private header out of public header. 2017-09-14 23:01:13 +00:00
XRay [XRay] Use optimistic logging model for FDR mode 2017-11-21 07:16:57 +00:00
CMakeLists.txt Moving libFuzzer from LLVM to compiler-rt. 2017-08-21 23:25:12 +00:00
LLVMBuild.txt Re-apply "Introduce FuzzMutate library" 2017-08-21 22:57:06 +00:00