llvm/utils
Bill Schmidt d35da5055b Recognize ValueType operands in source patterns for fast-isel.
Currently the fast-isel table generator recognizes registers, register
classes, and immediates for source pattern operands.  ValueType
operands are not recognized.  This is not a problem for existing
targets with fast-isel support, but will not work for targets like
PowerPC and SPARC that use types in source patterns.

The proposed patch allows ValueType operands and treats them in the
same manner as register classes.  There is no convenient way to map
from a ValueType to a register class, but there's no need to do so.
The table generator already requires that all types in the source
pattern be identical, and we know the register class of the output
operand already.  So we just assign that register class to any
ValueType operands we encounter.

No functional effect on existing targets.  Testing deferred until the
PowerPC target implements fast-isel.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182512 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-22 20:45:11 +00:00
..
bugpoint
buildit Preprocess Apple llvmCore headers to reflect NDEBUG setting. <rdar://12568983> 2013-02-05 22:59:42 +00:00
count Put targets on folders, if the IDE supports the feature. 2011-02-20 22:06:10 +00:00
crosstool
emacs Remove 'deplibs' keyword, since it's no longer used. 2012-12-03 06:34:06 +00:00
FileCheck Add 'CHECK-DAG' support 2013-05-14 20:34:12 +00:00
FileUpdate Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
fpcmp Merge System into Support. 2010-11-29 18:16:10 +00:00
git [utils] Update find-rev utility to take a branch argument (name of the git-svn 2013-01-17 18:57:21 +00:00
git-svn Use 'git svn find-rev' in git-svnrevert instead of shell script fu. 2013-04-26 03:27:39 +00:00
jedit
kate Add the IR attribute 'sspstrong'. 2013-01-23 06:41:41 +00:00
KillTheDoctor Fix grammar-o. 2012-12-11 00:23:07 +00:00
lint
lit lit: Fix infinite recursion when an out-of-tree test root is located inside the source test root. 2013-04-12 19:09:09 +00:00
llvm-build Rename VMCore directory to IR. 2013-01-02 09:10:48 +00:00
llvm-lit [CMake][Lit][unittests] Deprecate CMAKE_BUILD_TYPE in each build directory for unittests. 2013-01-27 12:20:50 +00:00
Misc
not Put targets on folders, if the IDE supports the feature. 2011-02-20 22:06:10 +00:00
PerfectShuffle Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
release Use proper syntax. 2013-05-15 21:38:12 +00:00
TableGen Recognize ValueType operands in source patterns for fast-isel. 2013-05-22 20:45:11 +00:00
Target/ARM McARM: Write a silly Python script to compute some hard coded info from the 2011-01-11 19:06:26 +00:00
testgen [MC] bundle alignment: prevent padding instructions from crossing bundle boundaries 2013-01-31 17:00:03 +00:00
textmate Add highlighting for "int" keyword 2013-01-08 16:23:02 +00:00
unittest Get the unittests compiling when building with cmake and the setting 2013-05-14 13:29:16 +00:00
valgrind llvm/utils/valgrind/x86_64-pc-linux-gnu.supp: Add /usr/bin/cmp. 2013-01-20 15:30:29 +00:00
vim Enable syntax highlighting for reStructuredText files. 2013-02-28 06:43:24 +00:00
yaml-bench Sort the #include lines for utils/... 2012-12-04 10:37:14 +00:00
check-each-file
clang-parse-diagnostics-file [utils] Tweak utils/clang-parse-diagnostics-file to ignore autoconf diagnostics. 2012-12-22 00:47:06 +00:00
codegen-diff
countloc.sh
DSAclean.py
DSAextract.py Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 2012-09-27 10:14:43 +00:00
findmisopt Remove llvm-ld and llvm-stub (which is only used by llvm-ld). 2012-04-19 19:27:54 +00:00
findoptdiff Convert a bunch of uses of 'bytecode' into 'bitcode'. This 2010-09-29 20:09:55 +00:00
findsym.pl
GenLibDeps.pl Rename VMCore directory to IR. 2013-01-02 09:10:48 +00:00
GetRepositoryPath [utils] Fix Get{RepositoryPath,SourceVersion} to have a more robust is-git-svn 2012-05-15 18:44:09 +00:00
GetSourceVersion [utils] Fix Get{RepositoryPath,SourceVersion} to have a more robust is-git-svn 2012-05-15 18:44:09 +00:00
getsrcs.sh
lldbDataFormatters.py Simplify the SmallVector pretty printer for LLDB a bit and make it work with reference types. 2012-11-10 09:45:32 +00:00
llvm-compilers-check Avoid Unnecessary Builds 2013-01-28 22:05:50 +00:00
llvm-native-gcc Convert a bunch of uses of 'bytecode' into 'bitcode'. This 2010-09-29 20:09:55 +00:00
llvm-native-gxx Convert a bunch of uses of 'bytecode' into 'bitcode'. This 2010-09-29 20:09:55 +00:00
llvm.grm Unify clang/llvm attributes for asan/tsan/msan (LLVM part) 2013-02-26 06:58:09 +00:00
llvm.natvis A port of the Visual Studio 2012 debugger visualizers for common LLVM and clang datatypes. Patch thanks to Nico Rieck! 2013-01-25 23:37:25 +00:00
LLVMBuild.txt LLVMBuild: Introduce a common section which currently has a list of the 2011-12-12 22:45:54 +00:00
llvmdo Remove CVS artifacts. 2010-08-04 16:11:24 +00:00
llvmgrep Use -H on darwin as well. 2012-01-26 22:06:23 +00:00
Makefile Move yaml2obj to tools too. 2013-04-05 20:00:35 +00:00
makellvm
profile.pl Rename profile_rt.so to libprofile_rt.so under configure+make (it already was 2011-04-29 02:12:06 +00:00
sort_includes.py Teach sort_includes.py to drop duplicated includes. 2012-12-21 18:00:08 +00:00
test_debuginfo.pl Fix a "Bad fd number" error on some platforms due to a less portable 2012-07-23 20:54:17 +00:00
UpdateCMakeLists.pl Generalize matching of add_executable to add_XXX_executable. 2012-11-22 07:48:52 +00:00
wciia.py really fix permissions 2012-11-17 06:38:44 +00:00