llvm/lib
Zachary Turner c036eebbeb [Support] Add llvm::sys::fs::remove_directories.
We already have a function create_directories() which can create
an entire tree, and remove() which can remove an empty directory,
but we do not have remove_directories() which can remove an entire
tree.  This patch adds such a function.

Because removing a directory tree can have dangerous consequences
when the tree contains a directory symlink, the patch here updates
the existing directory_iterator construct to optionally not follow
symlinks (previously it would always follow symlinks).  The delete
algorithm uses this flag so that for symlinks, only the links are
removed, and not the targets.

On Windows this is implemented with SHFileOperation, which also
does not recurse into symbolic links or junctions.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@297314 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-08 22:49:32 +00:00
..
Analysis [SLP] Fixed non-deterministic behavior in Loop Vectorizer. 2017-03-08 05:09:10 +00:00
AsmParser Change debug-info-for-profiling from a TargetOption to a function attribute. 2017-02-01 22:45:09 +00:00
Bitcode Move symbols from the global namespace into (anonymous) namespaces. NFC. 2017-02-11 11:06:55 +00:00
CodeGen GlobalISel: correctly handle trivial fcmp predicates. 2017-03-08 18:49:54 +00:00
DebugInfo [DWARFv5] Update definitions to match published spec. 2017-03-06 22:20:03 +00:00
Demangle Add support for demangling C++11 thread_local variables. 2017-01-31 15:56:36 +00:00
ExecutionEngine [Orc] Rename ObjectLinkingLayer -> RTDyldObjectLinkingLayer. 2017-02-20 05:45:14 +00:00
Fuzzer [fuzzer] Don't crash if LLVMFuzzerMutate was called by CustomCrossOver 2017-03-07 20:37:38 +00:00
IR [DebugInfo] Make legal and emit DW_OP_swap and DW_OP_xderef 2017-03-08 00:28:57 +00:00
IRReader
LibDriver LibDriver: Allow resource files to be archive members. 2016-12-15 19:37:46 +00:00
LineEditor
Linker IRMover: Merge flags LinkModuleInlineAsm and IsPerformingImport. 2017-02-03 17:01:14 +00:00
LTO LTO: Hash the set of imported symbols for each module. 2017-03-03 20:25:30 +00:00
MC Silence a warning "hiding virtual function". 2017-03-06 15:50:59 +00:00
Object Actually add error handling to unpacking the dyld compact bind and 2017-02-28 21:47:07 +00:00
ObjectYAML [ObjectYAML] Fix issue with DWARF2 AddrSize 8 2017-03-07 21:34:35 +00:00
Option Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
Passes Add call branch annotation for ICP promoted direct call in SamplePGO mode. 2017-02-23 22:15:18 +00:00
ProfileData [PGO] Text format profile reader needs to clear the value profile 2017-03-03 21:56:34 +00:00
Support [Support] Add llvm::sys::fs::remove_directories. 2017-03-08 22:49:32 +00:00
TableGen Use print() instead of dump() in code 2017-01-28 02:47:46 +00:00
Target [Hexagon] Use correct offset when extracting from the high word 2017-03-08 15:46:28 +00:00
Transforms [MemCpyOpt] clang-format + trim the legacy pass. NFC. 2017-03-08 21:28:19 +00:00
XRay [XRAY] [x86_64] Adding a Flight Data filetype reader to the llvm-xray Trace implementation. 2017-02-17 01:47:16 +00:00
CMakeLists.txt [XRay] Define the library for XRay trace logs 2017-01-11 06:39:09 +00:00
LLVMBuild.txt