llvm-project/llvm/include/llvm
Johannes Doerfert 3ab9e8b818 [Attributor][Fix] Initialize the cache prior to using it
Summary:
There were segfaults as we modified and iterated the instruction maps in
the cache at the same time. This was happening because we created new
instructions while we populated the cache. This fix changes the order
in which we perform these actions. First, the caches for the whole
module are created, then we start to create abstract attributes.

I don't have a unit test but the LLVM test suite exposes this problem.

Reviewers: uenoku, sstefan1

Subscribers: hiraditya, bollu, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D67232

llvm-svn: 372105
2019-09-17 10:52:41 +00:00
..
ADT [ADT] Remove a workaround for old versions of clang 2019-09-13 13:47:49 +00:00
Analysis [InstCombine] Annotate strdup with deref_or_null 2019-09-17 10:12:48 +00:00
AsmParser Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
BinaryFormat [WebAssembly] Initialize memory in start function 2019-09-04 19:50:39 +00:00
Bitcode Reland: [Remarks] Add an LLVM-bitstream-based remark serializer 2019-07-31 00:13:51 +00:00
Bitstream [Remarks] Add parser for bitstream remarks 2019-09-09 17:43:50 +00:00
CodeGen [SVE][MVT] Fixed-length vector MVT ranges 2019-09-17 10:19:23 +00:00
Config Moved everything SMT-related to LLVM and updated the cmake scripts. 2019-03-25 17:47:45 +00:00
DebugInfo [NFC] Fix file header filename to be Range.h 2019-09-12 22:23:03 +00:00
Demangle Fix incorrect demangling of call operator of lambda with explicit 2019-09-09 23:07:25 +00:00
ExecutionEngine [Orc] Address the remaining move-capture FIXMEs 2019-09-13 11:35:33 +00:00
FuzzMutate Fix misspelled filenames in file headers 2019-02-07 14:38:25 +00:00
IR [WebAssembly] Narrowing and widening SIMD ops 2019-09-13 22:54:41 +00:00
IRReader [IRReader] Expose getLazyIRModule 2019-02-11 22:01:13 +00:00
LTO [LTO][Legacy] Add new C inferface to query libcall functions 2019-09-16 18:49:54 +00:00
LineEditor Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Linker Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
MC [Alignment] Introduce llvm::Align to MCSection 2019-09-13 09:29:59 +00:00
MCA [MCA] consistently use MCPhysReg instead of unsigned as register type. NFCI 2019-08-22 13:32:17 +00:00
Object [llvm-readobj] - Refactor the code. 2019-09-17 08:53:18 +00:00
ObjectYAML [yaml2obj/ObjectYAML] - Cleanup the error reporting API, add custom errors handlers. 2019-09-13 16:00:16 +00:00
Option Let unaliased Args track which Alias they were created from, and use that in Arg::getAsString() for diagnostics 2019-07-09 00:34:08 +00:00
Passes [PGO] Add PGO support at -O0 in the experimental new pass manager 2019-08-01 22:36:34 +00:00
ProfileData [Coverage] Speed up file-based queries for coverage info, NFC 2019-09-16 19:08:44 +00:00
Remarks [Remarks] Allow remarks::Format::YAML to take a string table 2019-09-16 22:45:17 +00:00
Support [SVE][MVT] Fixed-length vector MVT ranges 2019-09-17 10:19:23 +00:00
TableGen Use C++14 heteregenous lookup for a couple of std::map<std::string, ...> 2019-08-21 21:17:34 +00:00
Target [ARM] Add support for MVE vmaxv and vminv 2019-09-13 09:11:46 +00:00
Testing/Support [Testing] Move clangd::Annotations to llvm testing support 2019-04-25 10:08:31 +00:00
TextAPI Revert [llvm-nm] Add tapi file support 2019-09-11 21:35:28 +00:00
ToolDrivers Share /machine: handling code with llvm-cvtres too 2019-06-12 11:32:43 +00:00
Transforms [Attributor][Fix] Initialize the cache prior to using it 2019-09-17 10:52:41 +00:00
WindowsManifest Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
WindowsResource Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
XRay Switch LLVM to use 64-bit offsets (2/5) 2019-08-06 10:49:40 +00:00
CMakeLists.txt
InitializePasses.h [MIR] MIRNamer pass for improving MIR test authoring experience. 2019-09-05 20:44:33 +00:00
LinkAllIR.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LinkAllPasses.h [MustExec] Add a generic "must-be-executed-context" explorer 2019-08-23 15:17:27 +00:00
Pass.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PassAnalysisSupport.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PassInfo.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PassRegistry.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
PassSupport.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
module.extern.modulemap [LLVM] Allow modulemap installation 2018-11-21 20:46:50 +00:00
module.install.modulemap [LLVM] Allow modulemap installation 2018-11-21 20:46:50 +00:00
module.modulemap [Attributor][modulemap] Revert r368064 but fix the build 2019-08-06 19:53:19 +00:00
module.modulemap.build