1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/tools
Martin Storsjö 872454e51b [llvm-rc] Allow string table values split into multiple string literals
This can practically easily be a product of combining strings with
macros in resource files.

This fixes https://github.com/mstorsjo/llvm-mingw/issues/140.

As string literals within llvm-rc are handled as StringRefs, each
referencing an uninterpreted slice of the input file, with actual
interpretation of the input string (codepage handling, unescaping etc)
done only right before writing them out to disk, it's hard to
concatenate them other than just bundling them up in a vector,
without rearchitecting a large part of llvm-rc.

This matches how the same already is supported in VersionInfoValue,
with a std::vector<IntOrString> Values.

MS rc.exe only supports concatenated string literals in version info
values (already supported), string tables (implemented in this patch)
and user data resources (easily implemented in a separate patch, but
hasn't been requested by any end user yet), while GNU windres supports
string immediates split into multiple strings anywhere (e.g. like
(100 ICON "myicon" ".ico"). Not sure if concatenation in other
statements actually is used in the wild though, in resource files
normally built by GNU windres.

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

(cherry picked from commit b989fcbae6f179ad887d19ceef83ace1c00b87cc)
2020-08-05 19:59:38 +02:00
..
bugpoint SmallPtrSet::find -> SmallPtrSet::count 2020-06-07 22:38:08 +02:00
bugpoint-passes Reverted the remainings of c1c9819ef91aab51b5a23fb3027adac5a2f551cc 2020-02-11 16:20:06 -08:00
dsymutil [dsymutil] Don't emit N_AST symbol entries in the Mach-O companion file 2020-06-05 08:42:18 -07:00
gold [LLVMgold.so] -plugin-opt=save-temps: save combined module to .lto.o instead of .o 2020-07-21 10:20:50 -07:00
llc Speculative fix for build breakage from D78403 2020-05-14 23:57:22 -04:00
lli [ORC] Rename SearchOrder operations on JITDylib to LinkOrder. 2020-05-04 16:47:52 -07:00
llvm-ar [llvm-ar] Update error messages and tests as per latest preferred style 2020-06-05 10:37:26 -07:00
llvm-as [opt] Remove obsolete --quiet option 2020-07-08 13:21:20 -07:00
llvm-as-fuzzer Fix several places that were calling verifyFunction or verifyModule without checking the return value. 2020-05-18 13:28:46 -07:00
llvm-bcanalyzer
llvm-c-test [SVE] Restore broken LLVM-C ABI compatability 2020-05-15 11:50:24 -07:00
llvm-cat
llvm-cfi-verify [llvm] Avoid linking llvm-cfi-verify to duplicate libs 2020-06-17 19:00:26 +02:00
llvm-config Update compiler extension integration into the build system 2020-04-24 09:40:14 +02:00
llvm-cov [llvm-cov gcov] Don't suppress .gcov output if .gcda is corrupted 2020-06-16 14:55:38 -07:00
llvm-cvtres
llvm-cxxdump
llvm-cxxfilt
llvm-cxxmap
llvm-diff llvm-diff: Avoid crash with complex expressions 2020-05-21 17:43:47 -04:00
llvm-dis
llvm-dwarfdump [llvm] Remove full stop frome error message 2020-06-24 09:41:17 -07:00
llvm-dwp llvm-dwp.cpp - fix implicit CommandLine.h dependency. NFC. 2020-06-23 12:29:52 +01:00
llvm-elfabi
llvm-exegesis [X86-64] Support Intel AMX instructions 2020-07-02 08:57:04 +08:00
llvm-extract [opt] Remove obsolete --quiet option 2020-07-08 13:21:20 -07:00
llvm-go Reinstate llvm-go to test the go bindings. 2020-02-13 17:24:55 -08:00
llvm-gsymutil Fix GSYM tests to run the yaml files and fix test failures on some machines. 2020-03-04 19:14:08 -08:00
llvm-ifs [llvm][clang][IFS] Enhancing the llvm-ifs yaml format for symbol lists. 2020-04-01 10:49:06 -04:00
llvm-isel-fuzzer llvm-isel-fuzzer.cpp - fix implicit CommandLine.h dependency. NFC. 2020-06-23 12:29:53 +01:00
llvm-itanium-demangle-fuzzer
llvm-jitlink [JITLink] Improve llvm-jitlink regression testing support for ELF. 2020-05-28 20:31:50 -07:00
llvm-jitlistener
llvm-link llvm-link: Add support for archive files as inputs 2020-07-14 15:30:59 -04:00
llvm-lipo Suppress a few -Wunreachable-code warnings. 2020-03-25 13:55:42 -04:00
llvm-lto Replace MCTargetOptionsCommandFlags.inc and CommandFlags.inc by runtime registration 2020-03-17 14:01:30 +01:00
llvm-lto2 Enable new passmanager plugin support for LTO. 2020-04-14 15:07:07 -07:00
llvm-mc [MC] Add --dwarf64 to generate DWARF64 debug info [1/7] 2020-06-16 15:50:13 +07:00
llvm-mc-assemble-fuzzer Add missing include Host.h in llvm-mc-* fuzzers. NFC. 2020-05-18 02:21:22 +07:00
llvm-mc-disassemble-fuzzer Add missing include Host.h in llvm-mc-* fuzzers. NFC. 2020-05-18 02:21:22 +07:00
llvm-mca Replace MCTargetOptionsCommandFlags.inc and CommandFlags.inc by runtime registration 2020-03-17 14:01:30 +01:00
llvm-microsoft-demangle-fuzzer Give microsoftDemangle() an outparam for how many input bytes were consumed. 2020-05-20 16:17:31 -04:00
llvm-ml Replace MCTargetOptionsCommandFlags.inc and CommandFlags.inc by runtime registration 2020-03-17 14:01:30 +01:00
llvm-modextract
llvm-mt
llvm-nm llvm-nm: Implement --special-syms. 2020-06-22 13:05:47 -07:00
llvm-objcopy [llvm-install-name-tool] Merge install-name options 2020-07-06 20:32:32 -07:00
llvm-objdump [test/Object][llvm-objdump] - llvm-objdump: don't abort() when the e_phoff field is invalid and refine testing. 2020-07-14 14:45:18 +03:00
llvm-opt-fuzzer CommandFlags.h - remove unnecessary includes. NFC. 2020-05-20 09:58:37 +01:00
llvm-opt-report
llvm-pdbutil [llvm-pdbutil] Add missing --id-stats to dump the IPI stream 2020-06-05 15:10:54 -04:00
llvm-profdata [NFC] Extract the code to write instr profile into function writeInstrProfile 2020-07-09 16:30:28 -07:00
llvm-rc [llvm-rc] Allow string table values split into multiple string literals 2020-08-05 19:59:38 +02:00
llvm-readobj [llvm-readobj] - Stop using unwrapOrError() for all program_headers() calls. 2020-07-14 14:16:57 +03:00
llvm-reduce [llvm-reduce] Reducing attributes 2020-07-09 23:10:43 +03:00
llvm-rtdyld
llvm-shlib Add option LLVM_NM to allow specifying the location of the llvm-nm tool 2020-07-06 13:27:56 -07:00
llvm-size [llvm-size] Output REL, RELA and STRTAB sections when allocatable 2020-07-01 12:02:32 +01:00
llvm-special-case-list-fuzzer
llvm-split Fix several places that were calling verifyFunction or verifyModule without checking the return value. 2020-05-18 13:28:46 -07:00
llvm-stress [SVE] Eliminate calls to default-false VectorType::get() from llvm-stress 2020-06-08 11:32:37 -07:00
llvm-strings
llvm-symbolizer [NativeSession] Implement NativeSession::findSymbolByAddress. 2020-05-13 09:39:25 -07:00
llvm-undname Give microsoftDemangle() an outparam for how many input bytes were consumed. 2020-05-20 16:17:31 -04:00
llvm-xray [XRay] Change Sled.Function to PC-relative for sled version 2 and make llvm-xray support sled version 2 addresses 2020-04-24 14:41:56 -07:00
llvm-yaml-numeric-parser-fuzzer
lto [LTO] Use StringRef instead of C-style strings in setCodeGenDebugOptions 2020-06-22 11:22:18 +01:00
msbuild
obj2yaml [yaml2obj] - Rename FileHeader::SH* fields. 2020-07-15 12:47:31 +03:00
opt [NewPM][opt] Translate -foo-analysis to require<foo-analysis> 2020-07-13 11:24:59 -07:00
opt-viewer Convert old python3 cgi method into the new html one 2020-03-25 22:38:55 +01:00
remarks-shlib
sancov Re-land "Migrate the rest of COFFObjectFile to Error" 2020-06-11 14:46:16 -07:00
sanstats
verify-uselistorder
vfabi-demangle-fuzzer
xcode-toolchain
yaml2obj [yaml2obj] - Add a way to set default values for macros used in a YAML. 2020-06-30 12:05:30 +03:00
CMakeLists.txt [Flang] add flang as a new subproject in cmake 2020-04-09 16:13:18 +01:00
LLVMBuild.txt