1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-18 18:42:46 +02:00
llvm-mirror/tools
Craig Disselkoen 1cbae6c6e8 C API: functions to get mask of a ShuffleVector
This commit fixes a regression (from LLVM 10 to LLVM 11 RC3) in the LLVM
C API.

Previously, commit 1ee6ec2bf removed the mask operand from the
ShuffleVector instruction, storing the mask data separately in the
instruction instead; this reduced the number of operands of
ShuffleVector from 3 to 2. AFAICT, this change unintentionally caused
a regression in the LLVM C API. Specifically, it is no longer possible
to get the mask of a ShuffleVector instruction through the C API. This
patch introduces new functions which together allow a C API user to get
the mask of a ShuffleVector instruction, restoring the functionality
which was previously available through LLVMGetOperand().

This patch also adds tests for this change to the llvm-c-test
executable, which involved adding support for InsertElement,
ExtractElement, and ShuffleVector itself (as well as constant vectors)
to echo.cpp. Previously, vector operations weren't tested at all in
echo.ll.

I also fixed some typos in comments and help-text nearby these changes,
which I happened to spot while developing this patch. Since the typo
fixes are technically unrelated other than being in the same files, I'm
happy to take them out if you'd rather they not be included in the patch.

Differential Revision: https://reviews.llvm.org/D88190
2020-09-25 16:01:05 -07:00
..
bugpoint [Bugpoint][NewPM] Pin bugpoint to legacy PM 2020-09-15 11:29:10 -07:00
bugpoint-passes Reverted the remainings of c1c9819ef91aab51b5a23fb3027adac5a2f551cc 2020-02-11 16:20:06 -08:00
dsymutil Use llvm::is_contained where appropriate (NFC) 2020-08-01 21:51:06 -07:00
gold [LLVMgold.so] -plugin-opt=save-temps: save combined module to .lto.o instead of .o 2020-07-20 10:02:56 -07:00
llc Speculative fix for build breakage from D78403 2020-05-14 23:57:22 -04:00
lli [ORC] Move file-descriptor based raw byte channel into a public header. 2020-08-11 09:50:58 -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 Revert "Remove redundant "std::move"s in return statements" 2020-02-10 07:07:40 -08:00
llvm-c-test C API: functions to get mask of a ShuffleVector 2020-09-25 16:01:05 -07:00
llvm-cat
llvm-cfi-verify [llvm-objdump] Change symbol name/PLT decoding errors to warnings 2020-08-13 08:13:42 -07:00
llvm-config [MinGW] Use lib prefix for libraries 2020-09-12 22:01:29 +03:00
llvm-cov [llvm-cov] Allow commas in filenames passed to -object flag 2020-09-18 13:46:29 -07:00
llvm-cvtres
llvm-cxxdump [llvm/Object] - Make ELFObjectFile::getRelocatedSection return Expected<section_iterator> 2019-10-21 11:06:38 +00:00
llvm-cxxfilt Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
llvm-cxxmap
llvm-diff llvm-diff: Avoid crash with complex expressions 2020-05-21 17:43:47 -04:00
llvm-dis [llvm-dis] Fix the disable-output flag 2019-11-14 13:35:21 -08:00
llvm-dwarfdump [llvm-dwarfdump] Fix misleading scope byte coverage statistics 2020-08-25 06:40:11 +01:00
llvm-dwp llvm-dwp.cpp - fix implicit CommandLine.h dependency. NFC. 2020-06-23 12:29:52 +01:00
llvm-elfabi [elfabi] Move llvm-elfabi related code to InterfaceStub library 2020-08-13 11:51:44 -07:00
llvm-exegesis [llvm-exegesis] Add whitespace between words in error message 2020-09-24 18:20:57 +00: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 [ORC] Fix some bugs in TPCDynamicLibrarySearchGenerator, use in llvm-jitlink. 2020-09-04 13:23:52 -07:00
llvm-jitlistener
llvm-libtool-darwin [llvm-libtool-darwin] Add support for -V option 2020-08-24 13:48:23 -07:00
llvm-link llvm-link: Add support for archive files as inputs 2020-07-14 15:30:59 -04:00
llvm-lipo [llvm-lipo] Add support for bitcode files 2020-08-25 21:11:18 -07:00
llvm-lto [LTO] Don't apply LTOPostLink module flag during writeMergedModule 2020-08-26 11:17:45 -07: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 [llvm-mca][NFC] Refactor handling of views that examine individual instructions, 2020-08-25 12:12:37 -07: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 Make sure that llvm-ml uses MASM integer lexing when in --as-lex mode 2020-09-02 16:03:01 -04:00
llvm-modextract
llvm-mt
llvm-nm [llvm-nm] Use aggregate initialization instead of memset zero 2020-09-16 10:27:12 -07:00
llvm-objcopy Fix a builtbot failure after 3ed04f93e30121867a813a220452b97aebeb1730. 2020-09-24 15:09:57 +03:00
llvm-objdump [lib/Object] - Refine interface of ELFFile<ELFT>. NFCI. 2020-09-15 11:38:31 +03:00
llvm-opt-fuzzer Revert "[NewPM] Add callbacks to PassBuilder to run before/after parsing a pass" 2020-09-23 18:43:13 -07:00
llvm-opt-report Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
llvm-pdbutil [llvm][NFC] Add missing 'override's 2020-07-17 17:35:59 -07:00
llvm-profdata [llvm-profdata]Fix llvm-profdata crash on compact binary profile 2020-09-20 16:58:34 -07:00
llvm-rc [llvm-rc] Lowercase the option definitions. NFC. 2020-09-16 09:34:26 +03:00
llvm-readobj [llvm-readelf/obj] - Stop printing wrong addresses for arm32 unwind info for non-relocatable objects. 2020-09-24 13:21:00 +03:00
llvm-reduce [llvm-reduce] Create returns with undef values for non-void functions. 2020-08-31 16:33:46 +01:00
llvm-rtdyld Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
llvm-shlib [Support] On Windows, add optional support for {rpmalloc|snmalloc|mimalloc} 2020-08-27 11:09:46 -04: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] Remove calls to VectorType::getNumElements() from llvm-stress 2020-08-31 15:51:15 -07:00
llvm-strings
llvm-symbolizer [llvm-symbolizer] Add back --use-symbol-table=true 2020-09-03 14:27:06 -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] Account: recursion detection 2020-07-27 10:15:44 +03: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 [DWARFYAML] Make the ExtLen field of extended opcodes optional. 2020-09-24 14:13:26 +08:00
opt Revert "[NewPM] Add callbacks to PassBuilder to run before/after parsing a pass" 2020-09-23 18:43:13 -07:00
opt-viewer Convert old python3 cgi method into the new html one 2020-03-25 22:38:55 +01:00
remarks-shlib [tools][remarks-shlib] Don't build libRemarks.so without PIC 2020-09-20 12:40:21 +02:00
sancov [Support] Use InitLLVM in llvm-stress, sancov and TableGen 2020-07-28 07:50:45 -04:00
sanstats
split-file [split-file] Fix sys::fs::remove() on Solaris after D83834 2020-08-11 08:05:10 -07:00
verify-uselistorder
vfabi-demangle-fuzzer [llvm][VectorUtils] Tweak VFShape for scalable vector functions. 2020-01-30 05:53:56 +00:00
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 Revert "[IRSim] Adding basic implementation of llvm-sim." 2020-09-25 16:18:48 -05:00