- May 04, 2012
-
-
Rafael Espindola authored
using cmake+ninja, since ninja buffers the compiler output. llvm-svn: 156150
-
-
Richard Trieu authored
in the conditional. llvm-svn: 156148
-
Jakob Stoklund Olesen authored
The masks returned by SuperRegClassIterator are computed automatically by TableGen. This is better than depending on the manually specified SuperRegClasses. llvm-svn: 156147
-
Jakob Stoklund Olesen authored
The TargetLowering construction needs to use a valid TargetRegisterInfo instance. llvm-svn: 156146
-
Argyrios Kyrtzidis authored
rdar://11353109 llvm-svn: 156145
-
Jakob Stoklund Olesen authored
This iterator class provides a more abstract interface to the (Idx, Mask) lists of super-registers for a register class. The layout of the tables shouldn't be exposed to clients. llvm-svn: 156144
-
Nick Kledzik authored
llvm-svn: 156143
-
Argyrios Kyrtzidis authored
was removed in r155969 to address a deficiency of RecursiveASTVisitor prior to recent changes on it. llvm-svn: 156142
-
Argyrios Kyrtzidis authored
minimal disruption on its clients. Unlike the previous data-recursive scheme, Traverse*Stmt methods are always getting called. The base methods of RecursiveASTVisitor will enqueue the sub-statements instead of calling TraverseStmt on them. Clients that override a Traverse*Stmt method and call TraverseStmt will still function as function-recursive traversal; if a client wants to enqueue a sub-statement in its override method it can do it like this: [inside the override method] StmtQueueAction StmtQueue(*this); StmtQueue.queue(Stmt->getSubStmt()); Should address rdar://11179167. llvm-svn: 156141
-
Chandler Carruth authored
minor behavior changes with this, but nothing I have seen evidence of in the wild or expect to be meaningful. The real goal is unifying our logic and simplifying the interfaces. A summary of the changes follows: - Make 'callIsSmall' actually accept a callsite so it can handle intrinsics, and simplify callers appropriately. - Nuke a completely bogus declaration of 'callIsSmall' that was still lurking in InlineCost.h... No idea how this got missed. - Teach the 'isInstructionFree' about the various more intelligent 'free' heuristics that got added to the inline cost analysis during review and testing. This mostly surrounds int->ptr and ptr->int casts. - Switch most of the interesting parts of the inline cost analysis that were essentially computing 'is this instruction free?' to use the code metrics routine instead. This way we won't keep duplicating logic. All of this is motivated by the desire to allow other passes to compute a roughly equivalent 'cost' metric for a particular basic block as the inline cost analysis. Sadly, re-using the same analysis for both is really messy because only the actual inline cost analysis is ever going to go to the contortions required for simplification, SROA analysis, etc. llvm-svn: 156140
-
Nick Kledzik authored
recursive descent functions into one table driven parser. Add proper error recovery and reporting. Add lots of test cases with semantics errors and verify error messages. llvm-svn: 156136
-
Anna Zaks authored
a struct. llvm-svn: 156135
-
Anna Zaks authored
(Since we don't have a generic pointer escape callback, modify ExprEngineCallAndReturn as well as the malloc checker.) llvm-svn: 156134
-
Chandler Carruth authored
of templates by using the newly introduce FoldingSetVector. This preserves insertion order for all iteration of specializations. I've also included a somewhat terrifying testcase that rapidly builds up a large number of functions. This is enough that any system with ASLR will have non-deterministic debug information generated for the test case without the fix here as the debug information is generated in part by walking these specializations. llvm-svn: 156133
-
Bob Wilson authored
llvm-svn: 156132
-
Chandler Carruth authored
but using a FoldingSet underneath and with a largely compatible interface to that of FoldingSet. This can be used anywhere a FoldingSet would be natural, but iteration order is significant. The initial intended use case is in Clang's template specialization lists to preserve instantiation order iteration. llvm-svn: 156131
-
Michael J. Spencer authored
llvm-svn: 156130
-
Douglas Gregor authored
Inline DenseMapInfo<clang::DeclarationName>::getHashValue() for a 0.4% speedup on <rdar://problem/11004361> llvm-svn: 156129
-
Pete Cooper authored
Patch by Meador Inge. llvm-svn: 156128
-
Fariborz Jahanian authored
// rdar://11095151 llvm-svn: 156127
-
Douglas Gregor authored
(trivially) make DeclContext::lookup()'s const version inlinable. Good for 0.3% on <rdar://problem/11004361>. llvm-svn: 156126
-
Fariborz Jahanian authored
synthesis translation. // rdar://11374235 - wip. llvm-svn: 156125
-
Jakob Stoklund Olesen authored
llvm-svn: 156124
-
Stephen Canon authored
llvm-svn: 156123
-
Jakob Stoklund Olesen authored
TargetRegisterClass now gives access to the necessary tables. llvm-svn: 156122
-
Jakob Stoklund Olesen authored
This is a pointer into one of the tables used by getMatchingSuperRegClass(). It makes it possible to use a shared implementation of that function. llvm-svn: 156121
-
Jakob Stoklund Olesen authored
The RC->getSubClassMask() pointer now points to a sequence of register class bit masks. The first bit mask is the normal sub-class mask. The following masks are super-reg class masks used by getMatchingSuperRegClass(). llvm-svn: 156120
-
Kevin Enderby authored
for the assembler and disassembler. Which were not being set/read correctly for offsets greater than 22 bits in some cases. Changes to lib/Target/ARM/ARMAsmBackend.cpp from Gideon Myles! llvm-svn: 156118
-
Chad Rosier authored
array_lengthof. Also, append the new filename with correct preprocessed suffix. Last part of rdar://11285725 llvm-svn: 156117
-
Jason Molenda authored
us of its architecture, use that to set the Target's arch if it doesn't already have one set. In Process::CompleteAttach(), if the Target has a valid arch make sure that the Platform we pick up is compatible with that arch; if not, find a Platform that is compatible. Don't let the the default platform override the Target's arch. <rdar://problem/11185420> llvm-svn: 156116
-
Johnny Chen authored
AttributeError: 'module' object has no attribute 'debugger' llvm-svn: 156115
-
Chandler Carruth authored
extraction into a public interface. Also clean it up and apply it more consistently such that we check for landing pads *anywhere* in the extracted code, not just in single-block extraction. This will be used to guide decisions in passes that are planning to eventually perform a round of code extraction. llvm-svn: 156114
-
Richard Smith authored
dropped its prior behavior of always defining __cplusplus to 1 in GNU mode in version 4.7. llvm-svn: 156113
-
Nuno Lopes authored
fix a few typos found by Chad in my previous commit llvm-svn: 156110
-
- May 03, 2012
-
-
Sirish Pande authored
This patch creates and optimizes packets as per Hexagon ISA rules. llvm-svn: 156109
-
Ted Kremenek authored
llvm-svn: 156108
-
Argyrios Kyrtzidis authored
validate that we didn't override the contents of any of such files. If this is detected, emit a diagnostic error and recover gracefully by using the contents of the original file that the PCH was built from. Part of rdar://11305263 llvm-svn: 156107
-
Fariborz Jahanian authored
of places. // rdar://11375908 llvm-svn: 156106
-
Chad Rosier authored
llvm-svn: 156104
-