summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Implement support for vector operands to inline asm, implementingChris Lattner2007-03-251-4/+16
| | | | | | CodeGen/X86/2007-03-24-InlineAsmVectorOp.ll llvm-svn: 35332
* switch TargetLowering::getConstraintType to take the entire constraint,Chris Lattner2007-03-251-4/+4
| | | | | | not just the first letter. No functionality change. llvm-svn: 35322
* Change uses of Function::front to Function::getEntryBlock for readability.Dan Gohman2007-03-221-1/+1
| | | | llvm-svn: 35265
* Minor bug.Evan Cheng2007-03-201-1/+2
| | | | llvm-svn: 35219
* Use SmallSet instead of std::set.Evan Cheng2007-03-171-1/+1
| | | | llvm-svn: 35133
* If sdisel has decided to sink GEP index expression into any BB. Replace all usesEvan Cheng2007-03-171-22/+37
| | | | | | in that BB. llvm-svn: 35132
* Turn on GEP index sinking by default.Evan Cheng2007-03-161-7/+0
| | | | llvm-svn: 35127
* Stupid bug.Evan Cheng2007-03-161-1/+1
| | | | llvm-svn: 35126
* Sink a binary expression into its use blocks if it is a loop invariantEvan Cheng2007-03-161-0/+92
| | | | | | | computation used as GEP indexes and if the expression can be folded into target addressing mode of GEP load / store use types. llvm-svn: 35123
* implement support for floating point constants used as inline asm memory ↵Chris Lattner2007-03-081-2/+7
| | | | | | operands. llvm-svn: 35033
* make this fail even in non-assert builds.Chris Lattner2007-03-081-2/+4
| | | | llvm-svn: 35025
* Refactoring of formal parameter flags. Enable properly use ofAnton Korobeynikov2007-03-071-24/+27
| | | | | | zext/sext/aext stuff. llvm-svn: 35008
* Enumerate SDISel formal parameter attributes. Make use of newAnton Korobeynikov2007-03-061-22/+24
| | | | | | enumeration. llvm-svn: 34960
* Unbreak VC++ build.Jeff Cohen2007-03-051-1/+1
| | | | llvm-svn: 34917
* Lower eh filter intrinsic.Jim Laskey2007-03-011-1/+4
| | | | llvm-svn: 34802
* MERGE_VALUES unnecessary.Jim Laskey2007-02-281-12/+4
| | | | llvm-svn: 34750
* track signedness of formal argument, though we have a fixme here.Chris Lattner2007-02-261-0/+8
| | | | llvm-svn: 34620
* Fix for PR1224.Jim Laskey2007-02-251-35/+50
| | | | llvm-svn: 34610
* optimize duplicate ValueMap lookupsChris Lattner2007-02-251-9/+6
| | | | llvm-svn: 34599
* Deal with cases when MMI is not requested.Jim Laskey2007-02-241-0/+14
| | | | llvm-svn: 34556
* Handle improper cast.Jim Laskey2007-02-231-6/+19
| | | | llvm-svn: 34535
* Tighten up error checking of args.Jim Laskey2007-02-221-17/+23
| | | | llvm-svn: 34493
* Handle lowering invoke to call correctly.Jim Laskey2007-02-221-95/+97
| | | | llvm-svn: 34492
* Selection and lowering for exception handling.Jim Laskey2007-02-211-2/+137
| | | | llvm-svn: 34481
* For PR1195:Reid Spencer2007-02-151-8/+8
| | | | | | | Change use of "packed" term to "vector" in comments, strings, variable names, etc. llvm-svn: 34300
* For PR1195:Reid Spencer2007-02-151-29/+29
| | | | | | | Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and PackedTyID -> VectorTyID. No functional changes. llvm-svn: 34293
* fix a warningChris Lattner2007-02-141-1/+1
| | | | llvm-svn: 34272
* Refix CodeGen/Generic/switch-lower.ll. In contrast to my previous patch,Chris Lattner2007-02-141-5/+5
| | | | | | this doesn't miscompile lots of programs :) llvm-svn: 34268
* Generalize TargetData strings, to support more interesting forms of data.Chris Lattner2007-02-141-4/+4
| | | | | | Patch by Scott Michel. llvm-svn: 34266
* revert my previous switch lowering change, which miscompiles a few programs.Chris Lattner2007-02-131-2/+2
| | | | | | This will break a dj test until I have time to investigate. llvm-svn: 34247
* Add a space between // and the comment.Lauro Ramos Venancio2007-02-131-9/+9
| | | | llvm-svn: 34244
* Add "original alignment" to function arguments flags.Lauro Ramos Venancio2007-02-131-10/+30
| | | | llvm-svn: 34240
* Fix switch lowering to order cases in zext order, which is how we emit theChris Lattner2007-02-131-2/+2
| | | | | | | comparisons. This fixes an infinite loop on CodeGen/Generic/switch-lower.ll and PR1197 llvm-svn: 34216
* Privatize StructLayout::MemberOffsets, adding an accessorChris Lattner2007-02-101-2/+2
| | | | llvm-svn: 34156
* Add function live-ins to entry block live-in set.Evan Cheng2007-02-101-0/+8
| | | | llvm-svn: 34112
* Rename some variables to avoid confusion with SelectionDAGISel::BB.Evan Cheng2007-02-101-6/+6
| | | | llvm-svn: 34110
* Switch VAlueMap from std::map to DenseMap.Chris Lattner2007-02-041-3/+3
| | | | llvm-svn: 33863
* Switch NodeMap from std::map to DenseMap, this speeds up isel by 2.3%Chris Lattner2007-02-041-7/+11
| | | | llvm-svn: 33862
* Changes to support making the shift instructions be true BinaryOperators.Reid Spencer2007-02-021-1/+4
| | | | | | | | | | | | This feature is needed in order to support shifts of more than 255 bits on large integer types. This changes the syntax for llvm assembly to make shl, ashr and lshr instructions look like a binary operator: shl i32 %X, 1 instead of shl i32 %X, i8 1 Additionally, this should help a few passes perform additional optimizations. llvm-svn: 33776
* Fit in 80 columnsChris Lattner2007-02-011-1/+1
| | | | llvm-svn: 33745
* Emit a better assertion message for PR1133Chris Lattner2007-02-011-15/+18
| | | | llvm-svn: 33736
* For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoidReid Spencer2007-01-301-1/+1
| | | | | | confusion with external linkage types. llvm-svn: 33663
* add initial support for handling inline asms with multiple constraints.Chris Lattner2007-01-291-4/+42
| | | | | | | | This doesn't do the "right thing" but will probably work in most cases. This implements CodeGen/PowerPC/2007-01-29-lbrx-asm.ll. llvm-svn: 33643
* Finish off bug 680, allowing targets to custom lower frame and returnNate Begeman2007-01-291-24/+8
| | | | | | address nodes. llvm-svn: 33636
* Arguments are counting from 1. not from 0. Maybe we should changeAnton Korobeynikov2007-01-281-1/+1
| | | | | | numbering somehow? E.g. make return argument the last? llvm-svn: 33606
* More cleanupAnton Korobeynikov2007-01-281-2/+3
| | | | llvm-svn: 33605
* Propagate changes from my local tree. This patch includes:Anton Korobeynikov2007-01-281-11/+29
| | | | | | | | | | | | | | | | | | | | | | 1. New parameter attribute called 'inreg'. It has meaning "place this parameter in registers, if possible". This is some generalization of gcc's regparm(n) attribute. It's currently used only in X86-32 backend. 2. Completely rewritten CC handling/lowering code inside X86 backend. Merged stdcall + c CCs and fastcall + fast CC. 3. Dropped CSRET CC. We cannot add struct return variant for each target-specific CC (e.g. stdcall + csretcc and so on). 4. Instead of CSRET CC introduced 'sret' parameter attribute. Setting in on first attribute has meaning 'This is hidden pointer to structure return. Handle it gently'. 5. Fixed small bug in llvm-extract + add new feature to FunctionExtraction pass, which relinks all internal-linkaged callees from deleted function to external linkage. This will allow further linking everything together. NOTEs: 1. Documentation will be updated soon. 2. llvm-upgrade should be improved to translate csret => sret. Before this, there will be some unexpected test fails. llvm-svn: 33597
* Change the MachineDebugInfo to MachineModuleInfo to better reflect usageJim Laskey2007-01-261-20/+20
| | | | | | for debugging and exception handling. llvm-svn: 33550
* Make LABEL a builtin opcode.Jim Laskey2007-01-261-3/+3
| | | | llvm-svn: 33537
* For PR970:Reid Spencer2007-01-211-44/+50
| | | | | | | Clean up handling of isFloatingPoint() and dealing with PackedType. Patch by Gordon Henriksen! llvm-svn: 33415
OpenPOWER on IntegriCloud