llvm/utils
Chris Lattner 2cacec55f9 Completely rewrite tblgen's type inference mechanism,
changing the primary datastructure from being a 
"std::vector<unsigned char>" to being a new TypeSet class
that actually has (gasp) invariants!

This changes more things than I remember, but one major
innovation here is that it enforces that named input 
values agree in type with their output values.

This also eliminates code that transparently assumes (in 
some cases) that SDNodeXForm input/output types are the
same, because this is wrong in many case.

This also eliminates a bug which caused a lot of ambiguous
patterns to go undetected, where a register class would
sometimes pick the first possible type, causing an
ambiguous pattern to get arbitrary results.

With all the recent target changes, this causes no 
functionality change!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98534 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-15 06:00:16 +00:00
..
bugpoint Require a remote command to exit with the exit status of the test program or with 255 if an error occurred. 2009-07-18 18:39:24 +00:00
buildit Fix comment. 2010-03-03 05:40:40 +00:00
count Add count/not tools as executables. 2009-09-24 06:23:57 +00:00
crosstool * Use "svn export" instead of "svn co" and avoid cleaning up .svn dirs 2009-08-04 15:47:18 +00:00
emacs .llx is no more. 2009-12-19 20:56:53 +00:00
FileCheck FileCheck: When looking for "possible matches", only compare against the prefix 2010-01-30 00:24:06 +00:00
FileUpdate Make LLVM command-line tools overwrite their output files without -f. 2009-08-25 15:34:52 +00:00
fpcmp remove attributions from utils. 2007-12-29 20:37:13 +00:00
git Add simple script for finding most-recent-rev-before-N in a git-svn repo; useful 2010-02-25 18:07:07 +00:00
jedit Add TableGen syntax highlighting for the jEdit editor. 2009-03-14 10:15:32 +00:00
lint * Fixed spelling 2009-02-20 23:44:54 +00:00
lit Make lit pay attention to --vg for unittests too. 2010-03-13 20:45:41 +00:00
Misc Add a 'zkill' script, which is more-or-less a fancy (although not necessarily 2009-11-08 21:51:53 +00:00
not Add count/not tools as executables. 2009-09-24 06:23:57 +00:00
PerfectShuffle Provide proper masks for neon perfect shuffle table. 2009-09-25 22:52:29 +00:00
TableGen Completely rewrite tblgen's type inference mechanism, 2010-03-15 06:00:16 +00:00
unittest Continue propagating the GoogleTest flags until we can update our version to 2010-03-09 22:45:10 +00:00
valgrind Add a valgrind suppressions file for x86_64/linux/4.3.3. 2009-09-14 16:10:32 +00:00
vim Fix grammaro in a comment. 2010-02-26 21:45:37 +00:00
cgiplotNLT.pl now with a legend, and multiple lines work. 2005-05-20 17:50:51 +00:00
check-each-file Added support for C++ compilation. 2004-02-26 23:02:25 +00:00
codegen-diff Add debug variable. 2003-10-16 23:46:01 +00:00
countloc.sh remove attributions from utils. 2007-12-29 20:37:13 +00:00
DSAclean.py Updated to be less restrictive on what is matched 2005-10-13 17:31:30 +00:00
DSAextract.py Added a break that I meant to include originally, for efficiency. Basically 2005-12-20 02:03:23 +00:00
findmisopt Make use of the llvm-ld tool's new ability to read input from stdin to extract 2007-08-13 06:19:51 +00:00
findoptdiff Auto-upgrade free instructions to calls to the builtin free function. 2009-10-24 04:23:03 +00:00
findsym.pl Fix a comment. 2006-08-09 19:40:13 +00:00
GenLibDeps.pl Filter the future all-of-llvm shared library out of the llvm-config 2010-02-25 01:21:38 +00:00
GetSourceVersion Make GetSourceVersion more portable, thanks Pawel! 2010-01-22 18:14:21 +00:00
getsrcs.sh remove attributions from utils. 2007-12-29 20:37:13 +00:00
importNLT.pl import fix and plot multiple lines at once 2005-04-27 17:32:41 +00:00
llvm-native-gcc Added EH support. 2004-03-02 15:54:25 +00:00
llvm-native-gxx C++ version of llvm-native-gcc. 2004-02-26 23:01:21 +00:00
llvm.grm Add the alignstack keyword. 2010-03-01 17:53:39 +00:00
llvmdo .llx is no more. 2009-12-19 20:56:53 +00:00
llvmgrep search unittests. 2009-08-24 03:44:02 +00:00
Makefile Add count/not tools as executables. 2009-09-24 06:23:57 +00:00
makellvm Update makellvm to return correct result code. 2008-08-13 20:43:56 +00:00
mkpatch update mkpatch for MC, patch by Aaron Gray 2010-03-12 06:32:12 +00:00
NewNightlyTest.pl NNT: Make sure stderr for build commands goes to log file, as intended but misdirected. 2009-12-15 00:41:47 +00:00
NightlyTest.gnuplot remove these labels, there are now bigger jumps in the graph that are unlabeled 2005-11-15 06:44:15 +00:00
NightlyTestTemplate.html Cause the various warnings list to be generated via a <ul> list with 2006-03-21 01:21:39 +00:00
NLT.schema Test modified svn mailer 2007-07-03 21:57:50 +00:00
OldenDataRecover.pl make recovering running_Olden data easier when the nightly tester eats the graphs 2006-04-12 17:41:19 +00:00
parseNLT.pl fix for parse, and a start at db import. Using CVS as scp :) 2005-04-27 14:57:26 +00:00
plotNLT.pl import fix and plot multiple lines at once 2005-04-27 17:32:41 +00:00
profile.pl update this to use llvm-config, patch by Jose M. Moya 2007-09-11 17:09:54 +00:00
RegressionFinder.pl Squash /usr/dcs path; use a 'require <version>' instead. 2004-03-03 17:38:51 +00:00
UpdateCMakeLists.pl Recognize 'add_executable' when analyzing CMake files. 2010-01-29 01:10:55 +00:00
userloc.pl Make all tools that use llvmdo have a -topdir option that allows the top 2006-08-14 18:49:05 +00:00
webNLT.pl now with a legend, and multiple lines work. 2005-05-20 17:50:51 +00:00