- Jan 12, 2013
-
-
Jakob Stoklund Olesen authored
When tryEvict() is looking for a cheaper register in the allocation order, skip the tail of too expensive registers when possible. llvm-svn: 172281
-
Jakob Stoklund Olesen authored
Remember the minimum cost of the registers in an allocation order and the number of registers at the end of the allocation order that have the same cost per use. This information can be used to limit the search space for RAGreedy::tryEvict() when looking for a cheaper register. llvm-svn: 172280
-
Eli Bendersky authored
llvm-svn: 172277
-
Eli Bendersky authored
The MCAsmParser interface defines ParseIdentifier is public. There's no reason whatsoever for AsmParser (which implements the MCAsmParser interface) to hide this method. This is all part of a bigger scheme. Several asm parsing "extensions" use the main parser properly through the MCAsmParser interface. However, GenericAsmParser has much more exclusive access and uses implementation details from the concrete implementation - AsmParser, in which it is also declared as a friend. This makes for overly coupled code, and even makes it hard to split GenericAsmParser into a separate file. There's no reason why GenericAsmParser shouldn't be able to access AsmParser through an abstract interface, as long as it's actually registered as an extension. llvm-svn: 172276
-
Michael Gottesman authored
llvm-svn: 172271
-
- Jan 11, 2013
-
-
Nadav Rotem authored
llvm-svn: 172269
-
Eli Bendersky authored
GenericAsmParser extension, where a lot of directives are already being parsed. The end goal is having just a single place (and a single lookup table) for all directive parsing. llvm-svn: 172268
-
Preston Gurd authored
Adds a check for -Oz, changes the code to not re-visit BBs, and skips over DBG_VALUE instrs. Patch by Andy Zhang. llvm-svn: 172258
-
Benjamin Kramer authored
llvm-svn: 172248
-
Michael Gottesman authored
Specifically: 1. Added a missing new line when we emit a debug message saying that we are marking a global variable as constant. 2. Added debug messages that describe what is occuring when GlobalOpt is evaluating a block/function. 3. Added a debug message that says what specific constructor is being evaluated. llvm-svn: 172247
-
Benjamin Kramer authored
This fixes some of the cycles between libCodeGen and libSelectionDAG. It's still a complete mess but as long as the edges consist of virtual call it doesn't cause breakage. BasicTTI did static calls and thus broke some build configurations. llvm-svn: 172246
-
Nadav Rotem authored
the target if it supports the different CAST types. We didn't do this on X86 because of the different register sizes and types, but on ARM this makes sense. llvm-svn: 172245
-
Eric Christopher authored
- recognize string "{memory}" in the MI generation - mark as mayload/maystore when there's a memory clobber constraint. PR14859. Patch by Krzysztof Parzyszek llvm-svn: 172228
-
Andrew Trick authored
llvm-svn: 172224
-
Andrew Trick authored
llvm-svn: 172223
-
Andrew Trick authored
llvm-svn: 172222
-
Andrew Trick authored
-dot-callgraph similarly follows a standard module pass pattern. Patch by Speziale Ettore! llvm-svn: 172220
-
Eli Bendersky authored
Patch by Michael Muller. llvm-svn: 172214
-
Tim Northover authored
This removes previous special cases for each floating-point type in favour of a shared codepath. llvm-svn: 172189
-
Nadav Rotem authored
ARM Cost Model: We need to detect the max bitwidth of types in the loop in order to select the max vectorization factor. We don't have a detailed analysis on which values are vectorized and which stay scalars in the vectorized loop so we use another method. We look at reduction variables, loads and stores, which are the only ways to get information in and out of loop iterations. If the data types are extended and truncated then the cost model will catch the cost of the vector zext/sext/trunc operations. llvm-svn: 172178
-
NAKAMURA Takumi authored
Revert r172153, "llvm/lib/MC/MCParser/AsmParser.cpp: [ms-inline-asm] Fix a couple of undefined behaviors. Operand->needAddressOf() is not initialized at !Operand->isReg()." It has been redundant since r172157. llvm-svn: 172166
-
Jordan Rose authored
Right now, only OS X has a way to determine the column width of a string (PR14910). Until we have a good way to deal with this, we just won't print carets, source ranges, or fixits for SMDiagnostic if the source line has multibyte characters in it. llvm-svn: 172164
-
Michael Ilseman authored
llvm-svn: 172159
-
NAKAMURA Takumi authored
llvm-svn: 172157
-
NAKAMURA Takumi authored
llvm/lib/MC/MCParser/AsmParser.cpp: [ms-inline-asm] Fix a couple of undefined behaviors. Operand->needAddressOf() is not initialized at !Operand->isReg(). llvm-svn: 172153
-
Jakub Staszak authored
llvm-svn: 172151
-
Eli Bendersky authored
llvm-svn: 172149
-
Chad Rosier authored
r172121. llvm-svn: 172148
-
Eli Bendersky authored
llvm-svn: 172146
-
Shuxin Yang authored
The root cause is mistakenly taking for granted that "dyn_cast<Instruction>(a-Value)" return a non-NULL instruction. llvm-svn: 172145
-
Evan Cheng authored
Value's current type. The casting is trivial even for aggregate type. llvm-svn: 172143
-
- Jan 10, 2013
-
-
Eli Bendersky authored
switch. Committed with Jim's and Chris's approval. llvm-svn: 172136
-
Peter Collingbourne authored
This fixes va_start/va_copy of a va_list field which happens to not be laid out at a 16-byte boundary. Differential Revision: http://llvm-reviews.chandlerc.com/D276 llvm-svn: 172128
-
Evan Cheng authored
llvm-svn: 172124
-
Jakub Staszak authored
llvm-svn: 172123
-
Chad Rosier authored
Part of rdar://12991541 llvm-svn: 172121
-
Owen Anderson authored
Teach InstCombine to hoist FABS and FNEG through FPTRUNC instructions. The application of these operations commutes with the truncation, so we should prefer to do them in the smallest size we can, to save register space, use smaller constant pool entries, etc. llvm-svn: 172117
-
Jordan Rose authored
Like Clang's FixItHint, SMFixIt represents an insertion, replacement, or removal of source text. One or more fix-its can be emitted as part of a diagnostic, and will be printed below the source range line to show the user how they can fix their code. Currently, the only client of SMFixIt is clang-tblgen; thus, the tests for this behavior live in clang/test/TableGen/tg-fixits.td. If/when SMFixIt is adopted within LLVM itself, those tests should be moved to the LLVM suite. llvm-svn: 172086
-
Jordan Rose authored
def foo : bar; ~~~ This allows us to produce more precise diagnostics about a certain superclass, and even provide fixits. llvm-svn: 172085
-
Jordan Rose authored
llvm-svn: 172084
-