1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
llvm-mirror/utils
Simon Tatham cd2724a625 [TableGen:AsmWriter] Cope with consecutive tied operands.
When you define an instruction alias as a subclass of InstAlias, you
specify all the MC operands for the instruction it expands to, except
for operands that are tied to a previous one, which you leave out in
the expectation that the Tablegen output code will fill them in
automatically.

But the code in Tablegen's AsmWriter backend that skips over a tied
operand was doing it using 'if' instead of 'while', because it wasn't
expecting to find two tied operands in sequence.

So if an instruction updates a pair of registers in place, so that its
MC representation has two input operands tied to the output ones (for
example, Arm's UMLAL instruction), then any alias which wants to
expand to a special case of that instruction is likely to fail to
match, because the indices of subsequent operands will be off by one
in the generated printAliasInstr function.

This patch re-indents some existing code, so it's clearest when
viewed as a diff with whitespace changes ignored.

Reviewers: fhahn, rengolin, sdesmalen, atanasyan, asb, jholewinski, t.p.northover, kparzysz, craig.topper, stoklund

Reviewed By: rengolin

Subscribers: javed.absar, kristof.beyls, llvm-commits

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

llvm-svn: 349141
2018-12-14 11:39:55 +00:00
..
benchmark Silence CMP0048 warning in the benchmark utility library 2018-12-14 00:17:12 +00:00
bugpoint
count
crosstool
docker
emacs Add fneg instruction to syntax highlighting lists 2018-11-13 19:50:38 +00:00
FileCheck [FileCheck] Parse command-line options from FILECHECK_OPTS 2018-11-06 22:07:03 +00:00
fpcmp
gdb-scripts
git
git-svn git-llvm: Fix incremental population of svn tree. 2018-11-29 16:46:34 +00:00
gn [gn build] Merge r348963 and r349076 2018-12-14 03:20:46 +00:00
jedit
kate Add fneg instruction to syntax highlighting lists 2018-11-13 19:50:38 +00:00
KillTheDoctor
lint
lit [test] Split strip-preserve-time.test, and skip atime test on NetBSD 2018-12-05 11:15:46 +00:00
llvm-build
llvm-lit
LLVMVisualizers
Misc
not [not] Improve error reporting consistency. 2018-11-09 01:17:22 +00:00
PerfectShuffle
release Revert "Exclude wasm target from Windows packaging due to PR39448" 2018-11-09 22:05:51 +00:00
Reviewing
sanitizers Add a ubsan blacklist entry for libstdc++ 8.0.1. 2018-11-21 23:04:39 +00:00
TableGen [TableGen:AsmWriter] Cope with consecutive tied operands. 2018-12-14 11:39:55 +00:00
Target/ARM
testgen
textmate
unittest [unittests] Do not use llvm::sort in googlemock 2018-09-20 04:27:32 +00:00
UpdateTestChecks [utils] Use operator "in" instead of bound function "has_key" 2018-12-07 09:49:21 +00:00
valgrind
vim Add fneg instruction to syntax highlighting lists 2018-11-13 19:50:38 +00:00
vscode
yaml-bench
abtest.py utils/abtest: Refactor and add bisection method 2018-09-07 17:08:44 +00:00
bisect
bisect-skip-count Document bisect-skip-count 2018-10-22 14:04:13 +00:00
bugpoint_gisel_reducer.py
check-each-file
clang-parse-diagnostics-file
codegen-diff
collect_and_build_with_pgo.py [utils] collect_and_build_with_pgo.py: revert part already fixed in rL345461 2018-10-27 23:10:09 +00:00
countloc.sh
create_ladder_graph.py
demangle_tree.py Add a utility script to stress test the demangler. 2018-08-30 20:53:48 +00:00
DSAclean.py
DSAextract.py
extract_symbols.py
extract_vplan.py [VPlan] Script to extract VPlan digraphs from log 2018-10-16 09:37:52 +00:00
findmisopt
findoptdiff
findsym.pl
GenLibDeps.pl
GetRepositoryPath
GetSourceVersion
getsrcs.sh
indirect_calls.py
lldbDataFormatters.py [utils] Update SmallVector lldb formatter for r337514 2018-11-06 18:52:30 +00:00
llvm-compilers-check
llvm-gisel-cov.py
llvm-native-gxx
llvm.grm
LLVMBuild.txt
llvmdo
llvmgrep
prepare-code-coverage-artifact.py [Coverage] Apply filtered paths to summary 2018-10-11 04:00:51 +00:00
schedcover.py
shuffle_fuzz.py
shuffle_select_fuzz_tester.py
sort_includes.py
unicode-case-fold.py
update_analyze_test_checks.py
update_cc_test_checks.py
update_llc_test_checks.py
update_mca_test_checks.py [llvm-mca][UpdateTestChecks] Don't try to align blocks that have already been subject to alignment in update_mca_test_checks.py 2018-10-29 13:24:20 +00:00
update_mir_test_checks.py
update_test_checks.py
UpdateCMakeLists.pl
wciia.py