summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Use the attribute enums to query if a parameter has an attribute.Bill Wendling2012-10-096-142/+30
| | | | llvm-svn: 165550
* Revert r165547 to fix build.Bill Wendling2012-10-091-4/+10
| | | | llvm-svn: 165548
* Use a single location for calculating the alignments.Bill Wendling2012-10-091-10/+4
| | | | llvm-svn: 165547
* tblgen: Rename handleDependencies -> createDependencyFileSean Silva2012-10-091-2/+2
| | | | llvm-svn: 165544
* tblgen: Move dependency file output to a separate function.Sean Silva2012-10-091-21/+31
| | | | | | This keeps it out of the main flow of TableGenMain. llvm-svn: 165542
* Use appropriate method calls to get the alignment value.Bill Wendling2012-10-091-4/+5
| | | | llvm-svn: 165541
* Whitespace.Chad Rosier2012-10-091-3/+0
| | | | llvm-svn: 165540
* Inline the checks for mutually exclusive attributes since they're used in ↵Bill Wendling2012-10-091-12/+56
| | | | | | only one module. llvm-svn: 165539
* Enable response files in all tools. Patch by Liu, Yaxun (Sam). I have simplifiedRafael Espindola2012-10-091-15/+11
| | | | | | the test. llvm-svn: 165535
* Move the 'FunctionOnly' attributes thingy inside of the Attributes class.Bill Wendling2012-10-092-21/+25
| | | | llvm-svn: 165530
* tblgen: Remove pointless method call.Sean Silva2012-10-091-1/+0
| | | | llvm-svn: 165511
* Update EarlyCSE's SimpleValues to use Hashing.h for their hashes. Expanded ↵Michael Ilseman2012-10-091-25/+81
| | | | | | the hashing and equality to allow for equality modulo commutativity for binary ops, and comparisons with swapping of predicates. llvm-svn: 165509
* Improvements to MIPS64 assembler:David Chisnall2012-10-092-42/+85
| | | | | | | - Teach it about dadd[i] instructions and move pseudo-instruction - Make it parse the register names correctly (for N32 / N64) llvm-svn: 165506
* Add in the first step of the multiple pointer support. This adds in support ↵Micah Villmow2012-10-092-31/+102
| | | | | | | | to the data layout for specifying a per address space pointer size. The next step is to update the optimizers to allow them to optimize the different address spaces with this information. llvm-svn: 165505
* Fixup for r165490: Use DenseMap instead of std::map. Simplify the loop in ↵Alexey Samsonov2012-10-091-13/+16
| | | | | | CollectFunctionDIs. llvm-svn: 165498
* Move the 'ParameterOnly' variable inside of the Attributes class and make it ↵Bill Wendling2012-10-091-15/+12
| | | | | | a method. llvm-svn: 165497
* Remove the now dead VarArgsIncompatible variable.Bill Wendling2012-10-091-3/+2
| | | | llvm-svn: 165496
* Use the enum value of the attributes when removing them from the attributes ↵Bill Wendling2012-10-092-84/+1
| | | | | | builder. llvm-svn: 165495
* Use the enum value of the attributes when adding them to the attributes builder.Bill Wendling2012-10-095-125/+57
| | | | llvm-svn: 165494
* Fix PR14016.Alexey Samsonov2012-10-092-0/+60
| | | | | | | | | | DeadArgumentElimination pass can replace one LLVM function with another, invalidating a pointer stored in debug info metadata entry for this function. To fix this, we collect debug info descriptors for functions before running a DeadArgumentElimination pass and "patch" pointers in metadata nodes if we replace a function. llvm-svn: 165490
* Create enums for the different attributes.Bill Wendling2012-10-0944-265/+263
| | | | | | | We use the enums to query whether an Attributes object has that attribute. The opaque layer is responsible for knowing where that specific attribute is stored. llvm-svn: 165488
* Remove some dead methods.Bill Wendling2012-10-091-16/+0
| | | | llvm-svn: 165485
* Separate AVXCC and SSECC printing for cmpps/pd/ss/sd and add masking before ↵Craig Topper2012-10-095-4/+55
| | | | | | the switch statement. This keeps the unreachable default case from being hit if the instruction was created with an intrinsic with too large of an immediate. llvm-svn: 165483
* In parseMSRMaskOperand, add an explicit check for the operand being an ↵Craig Topper2012-10-091-1/+2
| | | | | | identifier instead of just having an assert. llvm-svn: 165480
* Remove some dead code from ARMAsmPrinter. Add virtual and LLVM_OVERRIDE to ↵Craig Topper2012-10-092-38/+22
| | | | | | the other methods. Mark some of the helper methods as private. llvm-svn: 165479
* Remove some unused code in the X86AsmPrinter. Add LLVM_OVERRIDE and virtual ↵Craig Topper2012-10-092-64/+15
| | | | | | keywords to the remaining interface methods. llvm-svn: 165478
* Fix PR14034, an infloop / heap corruption / crash bug in the new SROA.Chandler Carruth2012-10-091-0/+2
| | | | | | | Thanks to Benjamin for the raw test case. This one took about 50 times longer to reduce than to fix. =/ llvm-svn: 165476
* Fix. Apply the no capture attribute to the correct parameter.Bill Wendling2012-10-091-4/+7
| | | | llvm-svn: 165469
* Convert to using the Attributes::Builder class to create attributes.Bill Wendling2012-10-092-14/+29
| | | | llvm-svn: 165468
* Use an iterator and proper query method instead of the 'hasAttrSomewhere' ↵Bill Wendling2012-10-091-5/+6
| | | | | | method. llvm-svn: 165467
* Remove more uses of the attribute enums by supplying appropriate query ↵Bill Wendling2012-10-092-1/+101
| | | | | | | | methods for them. No functionality change intended. llvm-svn: 165466
* Convert to using the Attributes::Builder interface.Bill Wendling2012-10-094-15/+36
| | | | llvm-svn: 165465
* Fix up comment to be more clear.Eric Christopher2012-10-081-2/+2
| | | | llvm-svn: 165463
* Use the Attributes::Builder to build the attributes in the parser.Bill Wendling2012-10-083-21/+43
| | | | llvm-svn: 165458
* Refactor the AddrMode class out of TLI to its own header file.Nadav Rotem2012-10-082-8/+9
| | | | | | | | This class is used by LSR and a number of places in the codegen. This is the first step in de-coupling LSR from TLI, and creating a new interface in between them. llvm-svn: 165455
* Convert the LLVM parser over to using the new Attributes::Builder to build itsBill Wendling2012-10-082-33/+39
| | | | | | attributes objects. llvm-svn: 165436
* Give CaptureTracker::shouldExplore a base implementation. Most users want to doNick Lewycky2012-10-082-4/+2
| | | | | | the same thing. No functionality change. llvm-svn: 165435
* Don't crash on extra evil irreducible control flow.Jakob Stoklund Olesen2012-10-082-2/+10
| | | | | | | | | | | | | | When the CFG contains a loop with multiple entry blocks, the traces computed by MachineTraceMetrics don't always have the same nice properties. Loop back-edges are normally excluded from traces, but MachineLoopInfo doesn't recognize loops with multiple entry blocks, so those back-edges may be included. Avoid asserting when that happens by adding an isEarlierInSameTrace() function that accurately determines if a dominating block is part of the same trace AND is above the currrent block in the trace. llvm-svn: 165434
* Begin the transition to using the AttributesImpl object for the Attributes ivar.Bill Wendling2012-10-083-104/+171
| | | | | | | | | | | Start using the AttributesImpl object to hold the value of the attributes. All queries go through the interfaces now. This has one unfortunate consequence. I needed to move the AttributesImpl.h file into include/llvm. But this is only temporary! Otherwise, the changes needed to support this would be too large. llvm-svn: 165433
* Add names for the accelerator table sections so that they canEric Christopher2012-10-081-0/+12
| | | | | | be emitted if they're wanted on elf platforms. llvm-svn: 165432
* Fixup comment.Eric Christopher2012-10-081-1/+1
| | | | llvm-svn: 165427
* Fixup comments.Eric Christopher2012-10-081-2/+2
| | | | llvm-svn: 165426
* PR12716: PPC crashes on vector compareAdhemerval Zanella2012-10-083-6/+27
| | | | | | | | | | | | | | | | | | Vector compare using altivec 'vcmpxxx' instructions have as third argument a vector register instead of CR one, different from integer and float-point compares. This leads to a failure in code generation, where 'SelectSETCC' expects a DAG with a CR register and gets vector register instead. This patch changes the behavior by just returning a DAG with the vector compare instruction based on the type. The patch also adds a testcase for all vector types llvm defines. It also included a fix on signed 5-bits predicates printing, where signed values were not handled correctly as signed (char are unsigned by default for PowerPC). This generates 'vspltisw' (vector splat) instruction with SIM out of range. llvm-svn: 165419
* misched: remove the unused getSpecialAddressLatency hook.Andrew Trick2012-10-083-57/+7
| | | | llvm-svn: 165418
* misched: remove forceUnitLatencies. Defaults are handled by the default ↵Andrew Trick2012-10-082-35/+30
| | | | | | SchedModel llvm-svn: 165417
* misched: avoid scheduling an instruction twice.Andrew Trick2012-10-081-25/+29
| | | | llvm-svn: 165416
* PowerPC: Fix object creation with PPC::MTCRF8 instructionAdhemerval Zanella2012-10-081-1/+3
| | | | llvm-svn: 165411
* Add floating-point to and from integer conversionAdhemerval Zanella2012-10-082-0/+36
| | | | | | | This patch add altivec support for v4i32 to v4f32 and for v4f32 to v4i32 vector rounding conversion. llvm-svn: 165409
* Move TargetData to DataLayout.Micah Villmow2012-10-08194-777/+777
| | | | llvm-svn: 165402
* Remove unused MachineInstr constructors that don't take a DebugLoc argument.Craig Topper2012-10-071-29/+0
| | | | llvm-svn: 165382
OpenPOWER on IntegriCloud