1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
llvm-mirror/tools
Martin Storsjö 102c71a022 [llvm-rc] Handle driveless absolute windows paths when loading external files
When llvm-rc loads an external file, it looks for it relative to
a number of include directories and the current working directory.
If the path is considered absolute, llvm-rc tries to open the
filename as such, and doesn't try to open it relative to other
paths.

On Windows, a path name like "\dir\file" isn't considered absolute
as it lacks the drive name, but by appending it on top of the search
dirs, it's not found.

LLVM's sys::path::append just appends such a path (same with a properly
absolute posix path) after the paths it's supposed to be relative to.

This fix doesn't handle the case if the resource script and the
external file are on a different drive than the current working
directory; to fix that, we'd have to make LLVM's sys::path::append
handle appending fully absolute and partially absolute paths (ones
lacking a drive prefix but containing a root directory), or switch
to C++17's std::filesystem.

Differential Revision: https://reviews.llvm.org/D92558
2020-12-10 14:11:06 +02:00
..
bugpoint llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
bugpoint-passes
dsymutil [dsymutil][DWARFLinker][NFC] Make interface of AddressMap more general. 2020-12-10 14:57:08 +03:00
gold Rename -plugin-opt=no-new-pass-manager to -plugin-opt=legacy-pass-manager 2020-12-09 16:43:30 -08:00
llc [ScalarizeMaskedMemIntrin] Add new PM support 2020-12-08 17:15:22 -05:00
lli llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-ar llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-as llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-as-fuzzer
llvm-bcanalyzer llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-c-test [llvm-c] Delete unimplemented llvm-c/LinkTimeOptimizer.h 2020-12-06 15:18:25 -08:00
llvm-cat llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-cfi-verify llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-config
llvm-cov llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-cvtres llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-cxxdump llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-cxxfilt
llvm-cxxmap llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-diff Switch from llvm::is_trivially_copyable to std::is_trivially_copyable 2020-12-02 22:02:48 -08:00
llvm-dis llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-dwarfdump llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-dwp llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-elfabi [llvm-elfabi] Emit ELF header and string table sections 2020-11-23 12:18:58 -08:00
llvm-exegesis [llvm-exegesis][PowerPC] Add more register classes 2020-12-04 15:02:12 +00:00
llvm-extract llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-go
llvm-gsymutil [lib/Object, tools] - Make ELFObjectFile::getELFFile return reference. 2020-12-04 16:02:29 +03:00
llvm-ifs llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-isel-fuzzer [AIX] Turn -fdata-sections on by default in Clang 2020-10-14 15:58:31 +00:00
llvm-itanium-demangle-fuzzer
llvm-jitlink [llvmbuildectomy] removed vestigial LLVMBuild.txt files 2020-12-05 22:00:22 +01:00
llvm-jitlistener [MCJIT] Profile the code generated by MCJIT engine using Intel VTune profiler 2020-11-16 19:28:14 +11:00
llvm-libtool-darwin llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-link [llvm-link][NFC] Minor cleanup 2020-12-09 23:16:13 -08:00
llvm-lipo llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-lto llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-lto2 [llvm-lto2] Use NPM with ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER 2020-12-08 11:43:19 -08:00
llvm-mc [llvm][clang][mlir] Add checks for the return values from Target::createXXX to prevent protential null deref 2020-11-21 21:04:12 -08:00
llvm-mc-assemble-fuzzer
llvm-mc-disassemble-fuzzer
llvm-mca [llvm][clang][mlir] Add checks for the return values from Target::createXXX to prevent protential null deref 2020-11-21 21:04:12 -08:00
llvm-microsoft-demangle-fuzzer
llvm-ml [ms] [llvm-ml] Support command-line defines 2020-12-01 18:06:05 -05:00
llvm-modextract llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-mt llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-nm [llvm-nm][MachO] Don't call getFlags on redacted symbols 2020-12-04 21:48:53 -08:00
llvm-objcopy [lib/Object, tools] - Make ELFObjectFile::getELFFile return reference. 2020-12-04 16:02:29 +03:00
llvm-objdump [lib/Object, tools] - Make ELFObjectFile::getELFFile return reference. 2020-12-04 16:02:29 +03:00
llvm-opt-fuzzer [NFC] Clean up PassBuilder 2020-10-30 10:03:59 -07:00
llvm-opt-report
llvm-pdbutil llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-profdata llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-profgen [llvm-profgen][NFC] Fix test failure by making unwinder's output deterministic 2020-12-07 22:36:25 -08:00
llvm-rc [llvm-rc] Handle driveless absolute windows paths when loading external files 2020-12-10 14:11:06 +02:00
llvm-readobj [llvm-readelf/obj] - Improve diagnostics when printing NT_FILE notes. 2020-12-09 12:31:46 +03:00
llvm-reduce llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-rtdyld [llvm][clang][mlir] Add checks for the return values from Target::createXXX to prevent protential null deref 2020-11-21 21:04:12 -08:00
llvm-shlib
llvm-size llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-special-case-list-fuzzer
llvm-split llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-stress llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-strings llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-symbolizer Recommit "[llvm-symbolizer] Switch to using native symbolizer by default on Windows" 2020-11-30 17:36:12 -08:00
llvm-undname llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-xray
llvm-yaml-numeric-parser-fuzzer
llvm-yaml-parser-fuzzer [YAMLIO] Support non-null-terminated inputs 2020-11-18 23:06:03 +00:00
lto [AIX] Turn -fdata-sections on by default in Clang 2020-10-14 15:58:31 +00:00
msbuild
obj2yaml [WebAssembly] Add support for named data sections in wasm binaries 2020-12-09 12:57:07 -08:00
opt Reland Pin -loop-reduce to legacy PM 2020-12-09 09:57:57 -08:00
opt-viewer
remarks-shlib
sancov
sanstats
split-file
verify-uselistorder llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
vfabi-demangle-fuzzer
xcode-toolchain
yaml2obj [llvm] Make obj2yaml and yaml2obj LLVM utilities instead of tools 2020-10-19 10:21:21 -07:00
CMakeLists.txt