- Aug 07, 2009
-
-
Dale Johannesen authored
preference; no functional change. llvm-svn: 78391
-
Devang Patel authored
Patch by Jakub Staszak. llvm-svn: 78388
-
Sanjiv Gupta authored
llvm-svn: 78383
-
Benjamin Kramer authored
llvm-svn: 78382
-
Daniel Dunbar authored
llvm-svn: 78381
-
Daniel Dunbar authored
i386-apple-darwin9. This presumably will get fixed once the generated code improves. llvm-svn: 78379
-
Daniel Dunbar authored
- Still not very sane, but a least its not 60k lines on X86. :) - In terms of correctness, currently some things are hard wired for X86, and we still don't properly resolve ambiguities (this is ignoring the instructions we don't even match due to funny .td stuff or other corner cases). The high level changes: 1. Represent tokens which are significant for matching explicitly as separate operands. This uniformly handles not only the instruction mnemonic, but also 'signficiant' syntax like the '*' in "call * ...". 2. Separate the matching of operands to an instruction from the construction of the MCInst. In theory this can be done during matching, but since the number of variations is small I think it makes sense to decompose the problems. 3. Improved a few of the mechanisms to at least successfully flatten / tokenize the assembly strings for PowerPC and ARM. 4. The comment at the top of AsmMatcherEmitter.cpp explains the approach I'm moving towards for handling ambiguous instructions. The high-bit is to infer a partial ordering of the operand classes (and force the user to specify one if we can't) and use that to resolve ambiguities. llvm-svn: 78378
-
Evan Cheng authored
llvm-svn: 78377
-
Evan Cheng authored
Another coalescer bug. When a dead copy is eliminated, transfer the kill to a def of the exact register rather than a super-register. llvm-svn: 78376
-
Evan Cheng authored
llvm-svn: 78370
-
Sanjiv Gupta authored
llvm-svn: 78369
-
Daniel Dunbar authored
llvm-svn: 78367
-
Daniel Dunbar authored
llvm-svn: 78366
-
Andrew Lenharth authored
llvm-svn: 78365
-
Dan Gohman authored
llvm-svn: 78363
-
Dan Gohman authored
llvm-svn: 78362
-
Evan Cheng authored
It turns out most of the thumb2 instructions are not allowed to touch SP. The semantics of such instructions are unpredictable. We have just been lucky that tests have been passing. This patch takes pain to ensure all the PEI lowering code does the right thing when lowering frame indices, insert code to manipulate stack pointers, etc. It's also custom lowering dynamic stack alloc into pseudo instructions so we can insert the right instructions at scheduling time. This fixes PR4659 and PR4682. llvm-svn: 78361
-
Evan Cheng authored
llvm-svn: 78360
-
Lang Hames authored
Added legal stuff, fixed some formatting issues. Removed the graph generator stuff as it was only meant for debugging the solver. llvm-svn: 78359
-
Lang Hames authored
New C++ PBQP solver. Currently about as fast (read _slow_) as the old C based solver, but I'll be working to improve that. The PBQP allocator has been updated to use the new solver. llvm-svn: 78354
-
Dale Johannesen authored
produced a CFG it wasn't prepared for. llvm-svn: 78351
-
Dale Johannesen authored
llvm-svn: 78350
-
- Aug 06, 2009
-
-
Nicolas Geoffray authored
module as first argument. llvm-svn: 78340
-
Jakob Stoklund Olesen authored
If we need it one day, there is nothing wrong with putting it back in. llvm-svn: 78337
-
Devang Patel authored
llvm-svn: 78335
-
Devang Patel authored
llvm-svn: 78334
-
Devang Patel authored
llvm-svn: 78333
-
Bob Wilson authored
llvm-svn: 78330
-
David Goodwin authored
Add parameter to pattern classes to enable an itinerary to be specified for instructions. For now just use the existing itineraries or NoItinerary. llvm-svn: 78321
-
Chris Lattner authored
creation activity into the target-specific subclasses of TLOF. Before this, globals with explicit sections could be created by the base class. 1. make getOrCreateSection protected, add a new getExplicitSectionGlobal pure virtual method to assign sections to globals with a specified section. 2. eliminate getSpecialCasedSectionGlobals, which is now PIC specific. 3. eliminate the getKindForNamedSection virtual method, which is now just a static method for ELF. 4. Add implementions of getExplicitSectionGlobal for ELF/PECOFF/Darwin/PIC16. They are now all detangled and understandable, woo! :) llvm-svn: 78319
-
John Mosby authored
- start support for new PEI w/reg alloc, allow running RS from emit{Pro,Epi}logue() target hooks. - fix minor issue with recursion detection. llvm-svn: 78318
-
Chris Lattner authored
creating them directly in the pic16 asmprinter. llvm-svn: 78317
-
Dan Gohman authored
and LowerReturn, to verify that the targets' hooks have respected some of their postconditions. llvm-svn: 78312
-
Dan Gohman authored
types don't have any return values, from CodeGen's perspective. This fixes PR4688. llvm-svn: 78311
-
Anton Korobeynikov authored
llvm-svn: 78299
-
Dan Gohman authored
by aggressive chain operand optimization. UpdateNodeOperands does not modify the node in place if it would result in a node identical to an existing node. llvm-svn: 78297
-
Dan Gohman authored
and high-bits values in ways that weren't correct for integer types wider than 64 bits. This fixes a miscompile in PPMacroExpansion.cpp in clang on x86-64. llvm-svn: 78295
-
Anton Korobeynikov authored
llvm-svn: 78293
-
Daniel Dunbar authored
- This also fixes the ENABLE_EXPENSIVE_CHECKS failure on vmcore.ml. llvm-svn: 78287
-
Andreas Bolka authored
As suggested by Nick Lewycky. llvm-svn: 78277
-