- Nov 12, 2008
-
-
Oscar Fuentes authored
llvm-svn: 59158
-
Mikhail Glushenkov authored
When constructing std::strings from C strings, we should check the input value to be not NULL so that the std::string constructor does not segfault. Fixes #3047. llvm-svn: 59131
-
Mikhail Glushenkov authored
Only the tools that are mentioned in the compilation graph definition are now inserted by PopulateCompilationGraph(). This should cut down plugin loading time a little. llvm-svn: 59097
-
Mikhail Glushenkov authored
llvm-svn: 59096
-
- Nov 08, 2008
-
-
Mikhail Glushenkov authored
llvm-svn: 58922
-
Anton Korobeynikov authored
Patch by Patrick Walton! llvm-svn: 58901
-
- Nov 07, 2008
-
-
Dan Gohman authored
exception, like it does for a std::string exception. llvm-svn: 58865
-
- Nov 05, 2008
-
-
Dan Gohman authored
nodes that are already selected. llvm-svn: 58763
-
Dan Gohman authored
priority function. Instead, just iterate over the AllNodes list, which is already in topological order. This eliminates a fair amount of bookkeeping, and speeds up the isel phase by about 15% on many testcases. The impact on most targets is that AddToISelQueue calls can be simply removed. In the x86 target, there are two additional notable changes. The rule-bending AND+SHIFT optimization in MatchAddress that creates new pre-isel nodes during isel is now a little more verbose, but more robust. Instead of either creating an invalid DAG or creating an invalid topological sort, as it has historically done, it can now just insert the new nodes into the node list at a position where they will be consistent with the topological ordering. Also, the address-matching code has logic that checked to see if a node was "already selected". However, when a node is selected, it has all its uses taken away via ReplaceAllUsesWith or equivalent, so it won't recieve any further visits from MatchAddress. This code is now removed. llvm-svn: 58748
-
- Nov 04, 2008
-
-
Dan Gohman authored
"Type has virtual functions but non-virtual destructor" warnings. llvm-svn: 58710
-
Dan Gohman authored
llvm-svn: 58701
-
- Nov 03, 2008
-
-
Dan Gohman authored
bits, use a union of a SimpleValueType enum and a regular Type*. This increases the size of MVT on 64-bit hosts from 32 bits to 64 bits. In most cases, this doesn't add significant overhead. There are places in codegen that use arrays of MVTs, so these are now larger, but they're small in common cases. This eliminates restrictions on the size of integer types and vector types that can be represented in codegen. As the included testcase demonstrates, it's now possible to codegen very large add operations. There are still some complications with using very large types. PR2880 is still open so they can't be used as return values on normal targets, there are no libcalls defined for very large integers so operations like multiply and divide aren't supported. This also introduces a minimal tablgen Type library, capable of handling IntegerType and VectorType. This will allow parts of TableGen that don't depend on using SimpleValueType values to handle arbitrary integer and vector types. llvm-svn: 58623
-
- Oct 30, 2008
-
-
Dan Gohman authored
llvm-svn: 58413
-
- Oct 28, 2008
-
-
Bill Wendling authored
- Add VERBOSE=1 flag. - Specify the LLVM_SUBMIT_VERSION when doing the "make install". The libLTO.dylib relies upon this flag during that time. llvm-svn: 58298
-
- Oct 27, 2008
-
-
David Greene authored
Have TableGen emit setSubgraphColor calls under control of a -gen-debug flag. Then in a debugger developers can set breakpoints at these calls to see waht is about to be selected and what the resulting subgraph looks like. This really helps when debugging instruction selection. llvm-svn: 58278
-
Cedric Venet authored
llvm-svn: 58263
-
Matthijs Kooijman authored
llvm-svn: 58250
-
- Oct 26, 2008
-
-
Cedric Venet authored
Add a default constructor to AsmWriterOperand to make VS2008sp1 happy. (AsmWriterOperand is used in a std::pair, and VS need to generate the default constructor of this pair). llvm-svn: 58185
-
- Oct 22, 2008
-
-
Argyrios Kyrtzidis authored
-Bring in int64_t for TableGen/Record.h and TableGen/TGLexer.h -Define strtoull llvm-svn: 57970
-
- Oct 17, 2008
-
-
Evan Cheng authored
Add RCBarriers to TargetInstrDesc. It's a list of register classes the given instruction can "clobber". For example, on x86 the call instruction can modify all of the XMM and fp stack registers. TableGen has been taught to generate the lists from instruction definitions. llvm-svn: 57722
-
Dan Gohman authored
constants that don't fit in an int. This fixes "this decimal constant is unsigned only in ISO C90" warnings. llvm-svn: 57668
-
Dan Gohman authored
use a SUB instruction instead of an ADD, because -128 can be encoded in an 8-bit signed immediate field, while +128 can't be. This avoids the need for a 32-bit immediate field in this case. A similar optimization applies to 64-bit adds with 0x80000000, with the 32-bit signed immediate field. To support this, teach tablegen how to handle 64-bit constants. llvm-svn: 57663
-
- Oct 15, 2008
-
-
Dan Gohman authored
This will allow predicates to be composed, which will allow the predicate definitions to become less redundant, and eventually will allow DAGISelEmitter.cpp to emit less redundant code. llvm-svn: 57562
-
- Oct 08, 2008
-
-
Duncan Sands authored
Patch by Samuel Tardieu. llvm-svn: 57291
-
- Oct 06, 2008
-
-
Devang Patel authored
Fixes build failure when target is i386. llvm-svn: 57211
-
- Oct 05, 2008
-
-
Chris Lattner authored
in tblgen. This is PR2827, thanks to Waldemar Knorr for tracking this down. llvm-svn: 57124
-
- Oct 04, 2008
-
-
Chris Lattner authored
Patch by Kenneth Boyd! llvm-svn: 57057
-
- Oct 02, 2008
-
-
Dale Johannesen authored
llvm-svn: 56963
-
- Sep 30, 2008
-
-
Dan Gohman authored
they'll be a little more visible. Also, update and reword them a bit. llvm-svn: 56877
-
- Sep 28, 2008
-
-
Dan Gohman authored
helper functions instead of duplicating it inline each time it is needed. This eliminates a few hundred or so copies of this code in each target. llvm-svn: 56759
-
- Sep 26, 2008
-
-
Dan Gohman authored
consistancy with ConstantInt, and re-implement it in terms of ConstantInt's getSExtValue. llvm-svn: 56700
-
- Sep 25, 2008
-
-
Devang Patel authored
s/ParamAttr/Attribute/g s/PAList/AttrList/g s/FnAttributeWithIndex/AttributeWithIndex/g s/FnAttr/Attribute/g This sets the stage - to implement function notes as function attributes and - to distinguish between function attributes and return value attributes. This requires corresponding changes in llvm-gcc and clang. llvm-svn: 56622
-
- Sep 22, 2008
-
-
Mikhail Glushenkov authored
llvm-svn: 56466
-
Mikhail Glushenkov authored
llvm-svn: 56465
-
Mikhail Glushenkov authored
llvm-svn: 56463
-
Mikhail Glushenkov authored
llvm-svn: 56462
-
Mikhail Glushenkov authored
llvm-svn: 56459
-
Mikhail Glushenkov authored
llvm-svn: 56458
-
Oscar Fuentes authored
llvm-svn: 56419
-
- Sep 17, 2008
-
-
Evan Cheng authored
llvm-svn: 56275
-