1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
llvm-mirror/include/llvm
Zachary Turner a10e920415 [PDB] Fix use after free.
Previously MappedBlockStream owned its own BumpPtrAllocator that
it would allocate from when a read crossed a block boundary.  This
way it could still return the user a contiguous buffer of the
requested size.  However, It's not uncommon to open a stream, read
some stuff, close it, and then save the information for later.
After all, since the entire file is mapped into memory, the data
should always be available as long as the file is open.

Of course, the exception to this is when the data isn't *in* the
file, but rather in some buffer that we temporarily allocated to
present this contiguous view.  And this buffer would get destroyed
as soon as the strema was closed.

The fix here is to force the user to specify the allocator, this
way it can provide an allocator that has whatever lifetime it
chooses.

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

llvm-svn: 304623
2017-06-03 00:33:35 +00:00
..
ADT Tidy up a bit of r304516, use SmallVector::assign rather than for loop 2017-06-02 17:24:26 +00:00
Analysis [OrderedBasicBlock] Return false for comesBefore(A, A) 2017-06-02 13:10:31 +00:00
AsmParser
Bitcode Remove ignore-empty-index-file option 2017-05-12 19:32:11 +00:00
CodeGen [CodeGen] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-03 00:22:41 +00:00
Config Allow suppressing host and target info in VersionPrinter 2017-04-19 00:03:36 +00:00
DebugInfo [PDB] Fix use after free. 2017-06-03 00:33:35 +00:00
Demangle
ExecutionEngine [ExecutionEngine] Make RuntimeDyld::MemoryManager responsible for tracking EH 2017-05-09 21:32:18 +00:00
IR [Statepoint] Be consistent about using deopt naming [NFCI] 2017-06-02 23:03:26 +00:00
IRReader
LineEditor
Linker
LTO [ThinLTO] Move -lto-use-new-pm to llvm-lto2, and change it to -use-new-pm. 2017-06-01 23:13:44 +00:00
MC [MC] Fix constant pools with DenseMap sentinel values 2017-05-30 09:37:11 +00:00
Object Re-land "COFF: migrate def parser from LLD to LLVM" 2017-06-02 17:53:06 +00:00
ObjectYAML [CodeView] Support CodeView subsections in any order. 2017-06-02 19:49:14 +00:00
Option [GSoC] Shell autocompletion for clang 2017-05-23 18:39:08 +00:00
Passes [PM/ThinLTO] Port the ThinLTO pipeline (both components) to the new PM. 2017-06-01 11:39:39 +00:00
ProfileData [InstrProf] Use more ArrayRef/StringRef. 2017-05-28 13:23:02 +00:00
Support Make mcpu=generic the default for armv7-a and armv8-a. 2017-06-01 07:31:43 +00:00
TableGen [TableGen] Remove a couple unused methods from Record that take a StringRef argument. NFC 2017-06-02 05:56:47 +00:00
Target TargetMachine: Indicate whether machine verifier passes. 2017-05-31 18:41:23 +00:00
ToolDrivers/llvm-lib Move lib/LibDriver -> lib/ToolDrivers/llvm-lib. NFCI. 2017-05-13 22:06:46 +00:00
Transforms Reapply "[Cloning] Take another pass at properly cloning debug info" 2017-06-01 23:02:12 +00:00
XRay [XRay][tools] Add option to llvm-xray extract to symbolize functions 2017-04-18 23:23:54 +00:00
CMakeLists.txt Support: Add a VCSRevision.h header file. 2017-04-13 01:26:12 +00:00
InitializePasses.h Change code formatting to look like the surrounding code 2017-06-02 23:07:58 +00:00
LinkAllIR.h
LinkAllPasses.h [X86] Relocate code of replacement of subtarget unsupported masked memory intrinsics to run also on -O0 option. 2017-05-15 11:30:54 +00:00
module.modulemap Fix CodeView-related modules build failures post-r304248 2017-05-31 01:08:43 +00:00
module.modulemap.build
Pass.h
PassAnalysisSupport.h
PassInfo.h [LegacyPassManager] Remove TargetMachine constructors 2017-05-18 17:21:13 +00:00
PassRegistry.h
PassSupport.h [LegacyPassManager] Remove TargetMachine constructors 2017-05-18 17:21:13 +00:00