| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Constify some methods. Patch provided by Anton Vayvod, thanks! | Chris Lattner | 2006-08-17 | 1 | -2/+2 |
| | | | | | llvm-svn: 29756 | ||||
| * | SelectNodeTo() may return a SDOperand that is different from the input. | Evan Cheng | 2006-08-16 | 1 | -3/+3 |
| | | | | | llvm-svn: 29726 | ||||
| * | Match tablegen changes. | Evan Cheng | 2006-08-11 | 1 | -6/+6 |
| | | | | | llvm-svn: 29604 | ||||
| * | CALLSEQ_* produces chain even if that's not needed. | Evan Cheng | 2006-08-11 | 1 | -2/+4 |
| | | | | | llvm-svn: 29603 | ||||
| * | Start eliminating temporary vectors used to create DAG nodes. Instead, pass | Chris Lattner | 2006-08-08 | 1 | -24/+14 |
| | | | | | | | | | | | | | | | | | | | | in the start of an array and a count of operands where applicable. In many cases, the number of operands is known, so this static array can be allocated on the stack, avoiding the heap. In many other cases, a SmallVector can be used, which has the same benefit in the common cases. I updated a lot of code calling getNode that takes a vector, but ran out of time. The rest of the code should be updated, and these methods should be removed. We should also do the same thing to eliminate the methods that take a vector of MVT::ValueTypes. It would be extra nice to convert the dagiselemitter to avoid creating vectors for operands when calling getTargetNode. llvm-svn: 29566 | ||||
| * | Match tablegen isel changes. | Evan Cheng | 2006-08-07 | 1 | -14/+5 |
| | | | | | llvm-svn: 29549 | ||||
| * | Remove InFlightSet hack. No longer needed. | Evan Cheng | 2006-07-28 | 1 | -1/+0 |
| | | | | | llvm-svn: 29373 | ||||
| * | Don't pass target name into TargetData anymore, it is never used or needed. | Chris Lattner | 2006-06-16 | 1 | -2/+1 |
| | | | | | | | | Remove explicit casts to std::string now that there is no overload resolution issues in the TargetData ctors. llvm-svn: 28830 | ||||
| * | Type of extract_element index operand should be iPTR. | Evan Cheng | 2006-06-15 | 1 | -2/+2 |
| | | | | | llvm-svn: 28797 | ||||
| * | Change RET node to include signness information of the return values. i.e. | Evan Cheng | 2006-05-26 | 1 | -3/+3 |
| | | | | | | | RET chain, value1, sign1, value2, sign2, ... llvm-svn: 28510 | ||||
| * | Add support for the missing FP condition codes | Chris Lattner | 2006-05-25 | 1 | -6/+12 |
| | | | | | llvm-svn: 28482 | ||||
| * | Assert if InflightSet is not cleared after instruction selecting a BB. | Evan Cheng | 2006-05-25 | 1 | -0/+1 |
| | | | | | llvm-svn: 28459 | ||||
| * | Clear HandleMap and ReplaceMap after instruction selection. Or it may cause | Evan Cheng | 2006-05-24 | 1 | -0/+2 |
| | | | | | | | non-deterministic behavior. llvm-svn: 28454 | ||||
| * | Patches to make the LLVM sources more -pedantic clean. Patch provided | Chris Lattner | 2006-05-24 | 4 | -4/+4 |
| | | | | | | | by Anton Korobeynikov! This is a step towards closing PR786. llvm-svn: 28447 | ||||
| * | Sparc is big-endian. | Owen Anderson | 2006-05-20 | 1 | -1/+1 |
| | | | | | llvm-svn: 28415 | ||||
| * | Make all of the TargetMachine subclasses use the new string TargetData methods. | Owen Anderson | 2006-05-20 | 1 | -1/+1 |
| | | | | | | | This is part of the on-going work on PR 761. llvm-svn: 28414 | ||||
| * | getCalleeSaveRegs and getCalleeSaveRegClasses are no long TableGen'd. | Evan Cheng | 2006-05-18 | 3 | -3/+16 |
| | | | | | llvm-svn: 28378 | ||||
| * | Remove PointerType from class Target | Evan Cheng | 2006-05-17 | 1 | -3/+0 |
| | | | | | llvm-svn: 28368 | ||||
| * | Remove dead variable. | Chris Lattner | 2006-05-12 | 1 | -1/+0 |
| | | | | | llvm-svn: 28247 | ||||
| * | Refactor a bunch of includes so that TargetMachine.h doesn't have to include | Owen Anderson | 2006-05-12 | 2 | -0/+2 |
| | | | | | | | | TargetData.h. This should make recompiles a bit faster with my current TargetData tinkering. llvm-svn: 28238 | ||||
| * | Split SwitchSection into SwitchTo{Text|Data}Section methods. | Chris Lattner | 2006-05-09 | 1 | -6/+6 |
| | | | | | llvm-svn: 28184 | ||||
| * | Some notes and thoughts to myself | Chris Lattner | 2006-05-09 | 1 | -7/+7 |
| | | | | | llvm-svn: 28182 | ||||
| * | Rename MO_VirtualRegister -> MO_Register. Clean up immediate handling. | Chris Lattner | 2006-05-04 | 1 | -5/+5 |
| | | | | | llvm-svn: 28104 | ||||
| * | Move some methods out of MachineInstr into MachineOperand | Chris Lattner | 2006-05-04 | 2 | -7/+6 |
| | | | | | llvm-svn: 28102 | ||||
| * | There shalt be only one "immediate" operand type! | Chris Lattner | 2006-05-04 | 2 | -7/+5 |
| | | | | | llvm-svn: 28099 | ||||
| * | Remove a bunch more SparcV9 specific stuff | Chris Lattner | 2006-05-04 | 1 | -8/+1 |
| | | | | | llvm-svn: 28093 | ||||
| * | Remove some more unused stuff from MachineInstr that was leftover from V9. | Chris Lattner | 2006-05-04 | 1 | -4/+0 |
| | | | | | llvm-svn: 28091 | ||||
| * | Refactor TargetMachine, pushing handling of TargetData into the ↵ | Owen Anderson | 2006-05-03 | 3 | -7/+9 |
| | | | | | | | | | target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference. This fixes PR 759. llvm-svn: 28074 | ||||
| * | Extend printBasicBlockLabel a bit so that it can be used to print all | Nate Begeman | 2006-05-02 | 1 | -4/+4 |
| | | | | | | | | basic block labels, consolidating the code to do so in one place for each target. llvm-svn: 28050 | ||||
| * | JumpTable support! What this represents is working asm and jit support for | Nate Begeman | 2006-04-22 | 2 | -6/+3 |
| | | | | | | | | | x86 and ppc for 100% dense switch statements when relocations are non-PIC. This support will be extended and enhanced in the coming days to support PIC, and less dense forms of jump tables. llvm-svn: 27947 | ||||
| * | Add the README files to the distribution. | Reid Spencer | 2006-04-13 | 1 | -0/+1 |
| | | | | | llvm-svn: 27651 | ||||
| * | Disable switch lowering for targets based on the selection dag isel, | Nate Begeman | 2006-04-08 | 1 | -3/+0 |
| | | | | | | | letting the code generator handle them directly. llvm-svn: 27539 | ||||
| * | Foundation for call frame information. | Jim Laskey | 2006-04-07 | 2 | -1/+8 |
| | | | | | llvm-svn: 27491 | ||||
| * | Expose base register for DwarfWriter. Refactor code accordingly. | Jim Laskey | 2006-03-28 | 2 | -11/+4 |
| | | | | | llvm-svn: 27225 | ||||
| * | Translate llvm target registers to dwarf register numbers properly. | Jim Laskey | 2006-03-27 | 1 | -1/+1 |
| | | | | | llvm-svn: 27180 | ||||
| * | SelectionDAGISel can now natively handle Switch instructions, in the same | Nate Begeman | 2006-03-27 | 1 | -1/+9 |
| | | | | | | | | | | | | | | | manner that the LowerSwitch LLVM to LLVM pass does: emitting a binary search tree of basic blocks. The new approach has several advantages: it is faster, it generates significantly smaller code in many cases, and it paves the way for implementing dense switch tables as a jump table by handling switches directly in the instruction selector. This functionality is currently only enabled on x86, but should be safe for every target. In anticipation of making it the default, the cfg is now properly updated in the x86, ppc, and sparc select lowering code. llvm-svn: 27156 | ||||
| * | #include Intrinsics.h into all dag isels | Chris Lattner | 2006-03-25 | 1 | -0/+1 |
| | | | | | llvm-svn: 27109 | ||||
| * | D'oh - should be even numbered. | Jim Laskey | 2006-03-24 | 1 | -15/+15 |
| | | | | | llvm-svn: 27088 | ||||
| * | Add dwarf register numbering to register data. | Jim Laskey | 2006-03-24 | 1 | -31/+80 |
| | | | | | llvm-svn: 27081 | ||||
| * | Add support to locate local variables in frames (early version.) | Jim Laskey | 2006-03-23 | 2 | -0/+15 |
| | | | | | llvm-svn: 26994 | ||||
| * | Eliminate IntrinsicLowering from TargetMachine. | Chris Lattner | 2006-03-23 | 2 | -6/+3 |
| | | | | | | | Make the CBE and V9 backends create their own, since they're the only ones that use it. llvm-svn: 26974 | ||||
| * | Remove BRTWOWAY* | Nate Begeman | 2006-03-17 | 1 | -2/+0 |
| | | | | | | | | | Make the PPC backend not dependent on BRTWOWAY_CC and make the branch selector smarter about the code it generates, fixing a case in the readme. llvm-svn: 26814 | ||||
| * | Add support for 'special' llvm globals like debug info and static ctors/dtors. | Chris Lattner | 2006-03-09 | 1 | -1/+6 |
| | | | | | llvm-svn: 26628 | ||||
| * | Copysign needs to be expanded everywhere. Note that Alpha and IA64 should | Chris Lattner | 2006-03-05 | 1 | -0/+2 |
| | | | | | | | implement copysign as a native op if they have it. llvm-svn: 26541 | ||||
| * | Don't print constant initializers, they may span lines now. | Chris Lattner | 2006-02-27 | 1 | -2/+0 |
| | | | | | llvm-svn: 26403 | ||||
| * | The HasNoV9 hack isn't needed here, now that tblgen knows that ↵ | Chris Lattner | 2006-02-21 | 1 | -3/+2 |
| | | | | | | | | | CustomDAGSchedInserter instructions are expensive. llvm-svn: 26298 | ||||
| * | kill ADD_PARTS & SUB_PARTS and replace them with fancy new ADDC, ADDE, SUBC | Nate Begeman | 2006-02-17 | 2 | -41/+18 |
| | | | | | | | | and SUBE nodes that actually expose what's going on and allow for significant simplifications in the targets. llvm-svn: 26255 | ||||
| * | Rework the SelectionDAG-based implementations of SimplifyDemandedBits | Nate Begeman | 2006-02-16 | 1 | -13/+26 |
| | | | | | | | | and ComputeMaskedBits to match the new improved versions in instcombine. Tested against all of multisource/benchmarks on ppc. llvm-svn: 26238 | ||||
| * | Sparc actually *DOES* have a directive for emitting zeros. In fact, it requires | Chris Lattner | 2006-02-15 | 1 | -1/+1 |
| | | | | | | | | | | | | | it, because this: .bss X: .byte 0 results in the assembler warning: "initialization in bss segment". Annoying. llvm-svn: 26204 | ||||
| * | Fix SingleSource/Regression/C/2004-08-12-InlinerAndAllocas.c on Sparc. | Chris Lattner | 2006-02-15 | 1 | -1/+22 |
| | | | | | | | | | The ABI specifies that there is a register save area at the bottom of the stack, which means the actual used pointer needs to be an offset from the subtracted value. llvm-svn: 26202 | ||||

