1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
llvm-mirror/utils
Craig Topper c793cba446 [TableGen] Store predicates in PatternToMatch as ListInit *. Add string for HwModeFeatures
This uses to be how predicates were handled prior to HwMode being
added. When the Predicates were converted to a std::vector it
significantly increased the cost of a compare in GenerateVariants.
Since ListInit's are uniquified by tablegen, we can use a simple
pointer comparison to check for identical lists.

In order to store the HwMode, we now add a separate string to
PatternToMatch. This will be appended separately to the predicate
string in getPredicateCheck. A new getPredicateRecords is added
to allow GlobalISel and getPredicateCheck to both get the sorted
list of Records. GlobalISel was ignoring any HwMode predicates
before and still is.

There is one slight change here, ListInits with different predicate
orders aren't sorted so the filtering in GenerateVariants might
fail to detect two isomorphic patterns with different predicate
orders. This doesn't seem to be happening in tree today.

My hope is this will allow us to remove all the BitVector tracking
in GenerateVariants that was making up for predicates beeing
expensive to compare. There's a decent amount of heap allocations
there on large targets like X86, AMDGPU, and RISCV.

Differential Revision: https://reviews.llvm.org/D100691
2021-04-28 12:05:49 -07:00
..
benchmark [benchmark] Replace references to M680x0 with M68k 2021-03-06 01:04:36 +00:00
bugpoint
count
crosstool
docker Harmonize Python shebang 2020-07-16 21:53:45 +02:00
emacs [Utils][Emacs] Improve syntax highlight 2021-03-30 19:32:30 -07:00
FileCheck [FileCheck] Try to fix buildbot failures caused by c7c542e8f306 2021-03-27 11:03:10 -04:00
fpcmp
gdb-scripts Avoid fragile type lookups in GDB pretty printer 2021-01-22 14:56:32 +01:00
git Add a git hook script that can be manually setup to run some checks on every push 2020-06-24 21:13:43 +00:00
gn [clang] Make libBasic not depend on MC 2021-04-28 12:16:22 -04:00
jedit
kate [Utils] Add missing attributes in syntax files 2021-03-05 17:36:09 +00:00
KillTheDoctor [KillTheDoctor/CMake] Add missing keyword PRIVATE in target_link_libraries 2020-09-07 16:08:55 +03:00
lint Harmonize Python shebang 2020-07-16 21:53:45 +02:00
lit [sanitizer] Use COMPILER_RT_EMULATOR with gtests 2021-04-25 15:41:13 -07:00
llvm-lit Execute llvm-lit with the python found by CMake by default 2020-08-03 10:51:35 +01:00
llvm-locstats
LLVMVisualizers Fix MSVC natvis visualisation of llvm::FixedVectorTyID and ScalableVectorTyID 2021-02-15 13:43:31 +00:00
Misc
not PrintStackTrace: don't symbolize if LLVM_DISABLE_SYMBOLIZATION is set 2020-08-21 11:27:13 -07:00
PerfectShuffle
release Bump the trunk major version to 13 2021-01-26 19:37:55 -08:00
Reviewing
sanitizers
TableGen [TableGen] Store predicates in PatternToMatch as ListInit *. Add string for HwModeFeatures 2021-04-28 12:05:49 -07:00
Target/ARM
testgen Harmonize Python shebang 2020-07-16 21:53:45 +02:00
textmate
unittest Only ignore -Wdeprecated-copy if the used compiler supports the warning 2021-04-27 08:01:10 +02:00
UpdateTestChecks [update_(llc_)test_checks.py] Support pre-processing commands 2021-04-28 12:19:19 +01:00
valgrind
vim [Utils][vim] Highlight poison keyword 2021-03-19 19:09:11 -07:00
vscode [Utils] Add missing attributes in syntax files 2021-03-05 17:36:09 +00:00
yaml-bench
abtest.py abtest.py: support bisection based on a response file 2021-04-08 09:46:01 -07:00
add_argument_names.py
bisect
bisect-skip-count
bugpoint_gisel_reducer.py
check_ninja_deps.py [utils] New script check_ninja_deps.py 2020-07-14 14:54:08 +01:00
check-each-file Added support for C++ compilation. 2004-02-26 23:02:25 +00:00
chunk-print-before-all.py
clang-parse-diagnostics-file
codegen-diff Prefer /usr/bin/env xxx over /usr/bin/xxx where xxx = perl, python, awk 2021-02-25 11:32:27 +01:00
collect_and_build_with_pgo.py docs: Add pointer to cmake caches for PGO 2020-12-07 15:55:26 -05:00
convert-constraint-log-to-z3.py Recommit "[ConstraintSystem] Add helpers to deal with linear constraints." 2020-09-15 12:07:26 +01:00
countloc.sh
create_ladder_graph.py
demangle_tree.py
DSAclean.py Harmonize Python shebang 2020-07-16 21:53:45 +02:00
DSAextract.py Harmonize Python shebang 2020-07-16 21:53:45 +02:00
extract_symbols.py
extract_vplan.py [utils] Fix regexp in llvm/utils/extract_vplan.py to extract VPlans. 2020-08-19 08:57:12 +01:00
extract-section.py [M68k] Fix extract-section.py under Python 3 2021-03-14 11:36:57 -07:00
findmisopt Delete -std-compile-opts. 2014-10-16 20:00:02 +00:00
findoptdiff Recommit "[IPConstProp] Remove and move tests to SCCP." 2020-08-02 22:23:54 +01:00
findsym.pl Prefer /usr/bin/env xxx over /usr/bin/xxx where xxx = perl, python, awk 2021-02-25 11:32:27 +01:00
GenLibDeps.pl Prefer /usr/bin/env xxx over /usr/bin/xxx where xxx = perl, python, awk 2021-02-25 11:32:27 +01:00
GetSourceVersion
getsrcs.sh
indirect_calls.py
lldbDataFormatters.py [llvm][utils] Fix handling of llvm::None 2021-03-29 17:43:53 -07:00
llvm-compilers-check Prefer /usr/bin/env xxx over /usr/bin/xxx where xxx = perl, python, awk 2021-02-25 11:32:27 +01:00
llvm-gisel-cov.py
llvm-native-gxx Prefer /usr/bin/env xxx over /usr/bin/xxx where xxx = perl, python, awk 2021-02-25 11:32:27 +01:00
llvm-original-di-preservation.py [Debugify][OriginalDIMode] Export the report into JSON file 2021-03-11 01:11:13 -08:00
llvm.grm [NFC] Add x86_amx and some missed half, bfloat keywords to llvm plugin syntaxes 2021-03-03 10:01:10 +08:00
llvmdo
llvmgrep
merge-stats.py [NFC] Add utility to sum/merge stats files 2020-08-07 19:02:42 +02:00
prepare-code-coverage-artifact.py svn propset svn:executable on utils/prepare-code-coverage-artifact.py 2019-06-04 23:35:07 +00:00
remote-exec.py Added utility to launch tests on a target remotely. 2020-10-23 20:52:30 +04:00
schedcover.py Harmonize Python shebang 2020-07-16 21:53:45 +02:00
shuffle_fuzz.py
shuffle_select_fuzz_tester.py [Utils] Make some scripts directly executable 2020-02-28 13:39:54 +00:00
sort_includes.py
sysroot.py sysroot.py: add support for darwin 2021-02-18 10:48:18 -05:00
unicode-case-fold.py
update_analyze_test_checks.py Fix obvious breakage of update_analysis_test_checks.py from 1ce846b 2021-03-22 11:06:30 -07:00
update_cc_test_checks.py [Utils] Support lit-like substitutions in update_cc_test_checks 2021-03-16 10:36:22 -07:00
update_llc_test_checks.py [update_(llc_)test_checks.py] Support pre-processing commands 2021-04-28 12:19:19 +01:00
update_mca_test_checks.py
update_mir_test_checks.py
update_test_checks.py [update_(llc_)test_checks.py] Support pre-processing commands 2021-04-28 12:19:19 +01:00
update_test_prefix.py [utils] Fix UpdateTestChecks case where 2 runs differ for last label 2020-12-15 07:16:54 -08:00
UpdateCMakeLists.pl
wciia.py