- Jun 20, 2011
-
-
Chris Lattner authored
ConvertType on InitListExprs as they are being converted. This is needed for a forthcoming patch, and improves the IR generated anyway (see additional type names in testcases). This patch also converts a bunch of std::vector's in CGObjCMac to use C arrays. There are a ton more that should be converted as well. llvm-svn: 133413
-
Chris Lattner authored
all over the place in different styles and variants. Standardize on two preferred entrypoints: one that takes a StructType and ArrayRef, and one that takes StructType and varargs. In cases where there isn't a struct type convenient, we now add a ConstantStruct::getAnon method (whose name will make more sense after a few more patches land). It would be "really really nice" if the ConstantStruct::get and ConstantVector::get methods didn't make temporary std::vectors. llvm-svn: 133412
-
Jordy Rose authored
llvm-svn: 133410
-
Chris Lattner authored
equality check. llvm-svn: 133409
-
Jordy Rose authored
[analyzer] Re-enable checking for strncpy, along with a new validation of the size argument. strncat is not yet up-to-date, but I'm leaving it enabled for now (there shouldn't be any false positives, at least...) llvm-svn: 133408
-
Jakob Stoklund Olesen authored
A RegisterTuples instance is used to synthesize super-registers by zipping together lists of sub-registers. This is useful for generating pseudo-registers representing register sequence constraints like 'two consecutive GPRs', or 'an even-odd pair of floating point registers'. The RegisterTuples def can be used in register set operations when building register classes. That is the only way of accessing the synthesized super-registers. For example, the ARM QQ register class of pseudo-registers could have been formed like this: // Form pairs Q0_Q1, Q2_Q3, ... def QQPairs : RegisterTuples<[qsub_0, qsub_1], [(decimate QPR, 2), (decimate (shl QPR, 1), 2)]>; def QQ : RegisterClass<..., (add QQPairs)>; Similarly, pseudo-registers representing '3 consecutive D-regs with wraparound' look like: // Form D0_D1_D2, D1_D2_D3, ..., D30_D31_D0, D31_D0_D1. def DSeqTriples : RegisterTuples<[dsub_0, dsub_1, dsub_2], [(rotl DPR, 0), (rotl DPR, 1), (rotl DPR, 2)]>; TableGen automatically computes aliasing information for the synthesized registers. Register tuples are still somewhat experimental. We still need to see how they interact with MC. llvm-svn: 133407
-
Jordy Rose authored
[analyzer] Eliminate "byte string function" from CStringChecker's diagnostics, and make it easier to provide custom messages for overflow checking, in preparation for re-enabling strncpy checking. llvm-svn: 133406
-
Chandler Carruth authored
This makes 'isPointerLikeType' a little less confusing, and pulls the decay check into a separate interface that is much more clear and concrete. Also, just implement these as logical wrappers around other predicates. Having a switch based implementation isn't likely to be necessary. We can try to optimize them later if they show up on a profile. llvm-svn: 133405
-
Johnny Chen authored
Add TestInlinedFrame.py to exercise the newly added SBFrame APIs: IsInlined() and GetFunctionName(). llvm-svn: 133404
-
- Jun 19, 2011
-
-
Howard Hinnant authored
More fixes: One of my fixes to type_traits earlier today was incorrect, so that is reverted. Recently clang appears to have tightened up its definition of is_convertible and that has caused some failures in [unordered_][multi]map. I've switched to using is_constructible to restablish the desired functionality in [unordered_][multi]map. Specifically, inserting rvalues of move-only types for the keys. llvm-svn: 133402
-
Howard Hinnant authored
llvm-svn: 133401
-
Jay Foad authored
const Constant *. llvm-svn: 133400
-
Benjamin Kramer authored
llvm-svn: 133390
-
Nadav Rotem authored
llvm-svn: 133389
-
Nadav Rotem authored
llvm-svn: 133388
-
John McCall authored
llvm-svn: 133387
-
John McCall authored
llvm-svn: 133386
-
John McCall authored
llvm-svn: 133385
-
Chandler Carruth authored
false positives, including those in the GCC test suite, and don't warn about them. Let me know if this causes fallout, we can turn it back off if needed. llvm-svn: 133384
-
Chandler Carruth authored
Trieu, and fix them by checking for array and function types as well as pointer types. I've added a predicate method on Type to bundle together the logic we're using here: isPointerLikeType(). I'd welcome better names for this predicate, this is the best I came up with. It's implemented as a switch to be a touch lighter weight than all the chained isa<...> casts that would result otherwise. llvm-svn: 133383
-
Nadav Rotem authored
instead of scalarizing, and doing an element-by-element truncat. llvm-svn: 133382
-
Nadav Rotem authored
llvm-svn: 133381
-
Francois Pichet authored
Fixes PR10154. Found by parsing MFC 2010 code with clang. llvm-svn: 133380
-
Greg Clayton authored
llvm-svn: 133378
-
Greg Clayton authored
llvm-svn: 133377
-
Greg Clayton authored
so we avoid crashing. llvm-svn: 133376
-
Greg Clayton authored
operator counts due to bad debug DWARF debug info. We now verify the operator has a valid number of params using the clang operator tables. llvm-svn: 133375
-
Nick Lewycky authored
expressions, but Chris wants to instead reduce the set of possible constant expression types. llvm-svn: 133374
-
Nick Lewycky authored
can manipulate instructions and constantexpr's uniformly. No users yet though. llvm-svn: 133373
-
Francois Pichet authored
llvm-svn: 133372
-
Chris Lattner authored
top level type without a specified number. This syntax isn't documented and blocks forward progress. llvm-svn: 133371
-
Peter Collingbourne authored
Fixes the Linux build. llvm-svn: 133370
-
Chris Lattner authored
llvm-svn: 133369
-
Chris Lattner authored
top level type without a specified number. This asmprinter has never generated this, as you can tell by no tests being updated. It also isn't documented. llvm-svn: 133368
-
Chris Lattner authored
llvm-svn: 133365
-
Chris Lattner authored
much cleaner. llvm-svn: 133364
-
Chris Lattner authored
llvm-svn: 133363
-
- Jun 18, 2011
-
-
Chris Lattner authored
llvm-svn: 133362
-
Chris Lattner authored
now that Type::getDescription() is dead, the TypePrinting class can move from Assembly/Writer.h to being a private class in AsmWriter.cpp. llvm-svn: 133361
-
Chris Lattner authored
removes some gunk from LLVMContext. llvm-svn: 133360
-