summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/TargetLowering.cpp
Commit message (Collapse)AuthorAgeFilesLines
* initialize an instance var, apparently I forgot to commit this long agoChris Lattner2006-01-251-0/+1
| | | | llvm-svn: 25609
* Set SchedulingForLatency to be the default scheduling preference for all.Evan Cheng2006-01-251-0/+1
| | | | llvm-svn: 25607
* Lefted out TargetLowering::Evan Cheng2005-12-211-2/+2
| | | | llvm-svn: 24922
* * Fix a GlobalAddress lowering bug.Evan Cheng2005-12-211-0/+5
| | | | | | * Teach DAG combiner about X86ISD::SETCC by adding a TargetLowering hook. llvm-svn: 24921
* Added a hook to print out names of target specific DAG nodes.Evan Cheng2005-12-201-0/+3
| | | | llvm-svn: 24877
* Add the majority of the vector machien value types we expect to support,Nate Begeman2005-11-291-3/+3
| | | | | | | and make a few changes to the legalization machinery to support more than 16 types. llvm-svn: 24511
* Rather than attempting to legalize 1 x float, make sure the SD ISel neverNate Begeman2005-11-221-1/+5
| | | | | | | | | | | generates it. Make MVT::Vector expand-only, and remove the code in Legalize that attempts to legalize it. The plan for supporting N x Type is to continually epxand it in ExpandOp until it gets down to 2 x Type, where it will be scalarized into a pair of scalars. llvm-svn: 24482
* Invert the TargetLowering flag that controls divide by consant expansion.Nate Begeman2005-10-211-0/+2
| | | | | | | | | | Add a new flag to TargetLowering indicating if the target has really cheap signed division by powers of two, make ppc use it. This will probably go away in the future. Implement some more ISD::SDIV folds in the dag combiner Remove now dead code in the x86 backend. llvm-svn: 23853
* initialize new flagChris Lattner2005-09-271-0/+1
| | | | llvm-svn: 23480
* Change the names of member variables per Chris' instructions, and documentReid Spencer2005-08-271-2/+2
| | | | | | them more clearly. llvm-svn: 23118
* Adjust to new interfaceChris Lattner2005-08-241-4/+4
| | | | llvm-svn: 23010
* For: memory operations -> storesReid Spencer2005-07-191-0/+2
| | | | | | | | | | | | | | | | This is the first incremental patch to implement this feature. It adds no functionality to LLVM but setup up the information needed from targets in order to implement the optimization correctly. Each target needs to specify the maximum number of store operations for conversion of the llvm.memset, llvm.memcpy, and llvm.memmove intrinsics into a sequence of store operations. The limit needs to be chosen at the threshold of performance for such an optimization (generally smallish). The target also needs to specify whether the target can support unaligned stores for multi-byte store operations. This helps ensure the optimization doesn't generate code that will trap on an alignment errors. More patches to follow. llvm-svn: 22468
* Remove trailing whitespaceMisha Brukman2005-04-211-4/+4
| | | | llvm-svn: 21422
* Add a hook to find out how the target handles shift amounts that are out ofChris Lattner2005-01-191-0/+1
| | | | | | | | | range. Either they are undefined (the default), they mask the shift amount to the size of the register (X86, Alpha, etc), or they extend the shift (PPC). This defaults to undefined, which is conservatively correct. llvm-svn: 19677
* Shift and setcc types default to the pointer type.Chris Lattner2005-01-161-1/+1
| | | | llvm-svn: 19619
* Use enums, move virtual dtor out of line.Chris Lattner2005-01-161-8/+14
| | | | llvm-svn: 19610
* Set up identity transforms.Chris Lattner2005-01-161-0/+7
| | | | llvm-svn: 19584
* Move some information out of LegalizeDAG into the generic Target interface.Chris Lattner2005-01-161-2/+55
| | | | llvm-svn: 19581
* Clear the whole array, always.Chris Lattner2005-01-111-1/+1
| | | | llvm-svn: 19482
* First draft of new Target interfaceChris Lattner2005-01-071-0/+48
llvm-svn: 19324
OpenPOWER on IntegriCloud