summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* 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
* new testcaseChris Lattner2007-01-291-0/+7
| | | | llvm-svn: 33642
* Out of line function.Jim Laskey2007-01-293-2/+9
| | | | llvm-svn: 33641
* Use StartPassTimer() and StopPassManager()Devang Patel2007-01-291-3/+2
| | | | llvm-svn: 33640
* Only gather frame info if debug or eh.Jim Laskey2007-01-294-5/+9
| | | | llvm-svn: 33639
* - Undo previous check-in (i.e. Do not export TimingInfo class throughDevang Patel2007-01-292-54/+67
| | | | | | | | | | | PassManagers.h). - Add StopPassTimer() and StartPassTimer() to expose TimingInfo to CallGraphPassManager - Use these two APIs in CalLgraphPassManager to measure timings. llvm-svn: 33638
* Finish off bug 680, allowing targets to custom lower frame and returnNate Begeman2007-01-2913-66/+69
| | | | | | address nodes. llvm-svn: 33636
* We'd still like to register allocate r2 on darwin before the callee-saveNate Begeman2007-01-291-6/+6
| | | | | | regs. llvm-svn: 33635
* rename flagJim Laskey2007-01-291-1/+1
| | | | llvm-svn: 33634
* Comment.Evan Cheng2007-01-291-1/+1
| | | | llvm-svn: 33633
* Remember if LR register has been spilled in this function.Evan Cheng2007-01-292-5/+17
| | | | llvm-svn: 33632
* Save all registers by default, as they can be used to pass parametersAnton Korobeynikov2007-01-291-13/+11
| | | | | | for "inreg" calls llvm-svn: 33631
* Update some of the llvm in the readmeNate Begeman2007-01-291-25/+23
| | | | llvm-svn: 33630
* Properly support cstringsNate Begeman2007-01-292-5/+16
| | | | llvm-svn: 33629
* Flag to control exception handling.Jim Laskey2007-01-293-2/+14
| | | | llvm-svn: 33628
* Measure timings.Devang Patel2007-01-291-2/+3
| | | | llvm-svn: 33627
* Move TimingInfo into PassManagers.h so that other libs can use it.Devang Patel2007-01-292-53/+54
| | | | llvm-svn: 33626
* Disable zero landing pads for now.Jim Laskey2007-01-291-1/+2
| | | | llvm-svn: 33625
* Regenerate.Reid Spencer2007-01-293-272/+342
| | | | llvm-svn: 33624
* For PR1142:Reid Spencer2007-01-291-4/+39
| | | | | | | | | | When an unresolved definition is found, check to see if it is only unresolved because the csretcc was upgraded to the sret param attribute. Such changes change the function type and lead to unresolved definitions. In such cases, just cast the function to the type expected by the CallInst. That is, cast to the version of the function that has the sret param attribute. llvm-svn: 33623
* Landing pad-less eh for PPC.Jim Laskey2007-01-297-129/+234
| | | | llvm-svn: 33622
* Update projectJim Laskey2007-01-291-6/+0
| | | | llvm-svn: 33621
* Remove tabs.Reid Spencer2007-01-291-2/+2
| | | | llvm-svn: 33620
* Implement use of new IntrinsicLowering interface.Reid Spencer2007-01-292-5/+10
| | | | llvm-svn: 33619
* Use TargetData to obtain the correct size of the "size_t" argument forReid Spencer2007-01-291-9/+24
| | | | | | | | functions like memcpy, memmove and memset. Ensure only one prototype is used for these functions and that it matches the system definition by using the appropriate type for the size argument. llvm-svn: 33618
* IntrinsicLowering now requires TargetData.Reid Spencer2007-01-291-1/+3
| | | | llvm-svn: 33617
* Update project.Jim Laskey2007-01-291-6/+4
| | | | llvm-svn: 33616
* Regenerate.Reid Spencer2007-01-293-1261/+1163
| | | | llvm-svn: 33615
* Upgrade old csret calling convention into sret parameter attribute.Reid Spencer2007-01-292-15/+60
| | | | llvm-svn: 33614
* Update this test case to look for sret parameter attribute not csret cc.Reid Spencer2007-01-291-1/+2
| | | | llvm-svn: 33613
* Simplify names of lattice values. SGTUNE becomes SGT, for example.Nick Lewycky2007-01-291-71/+127
| | | | | | | | | | | | | Fix initializeConstant, now initializeInt. Fixes major performance bottleneck. X == Y || X->DominatedBy(Y) is redundant. Remove the X == Y part. Fix crasher in makeEqual where getOrInsertNode would add a new constant, producing an NE relationship between the two members we're trying to make equal. This now allows us to mark more BBs as unreachable. llvm-svn: 33612
* Read from the right place.Chris Lattner2007-01-291-1/+1
| | | | llvm-svn: 33611
* Fix PR1139Chris Lattner2007-01-291-17/+24
| | | | llvm-svn: 33610
* Make doxygen happyAnton Korobeynikov2007-01-291-1/+1
| | | | llvm-svn: 33609
* For PR1138:Reid Spencer2007-01-281-4/+11
| | | | | | | Force memcpy to be the 32-bit variant. Since this is only used with CBE and lli which both target 32-bit machines, this should be okay. llvm-svn: 33608
* Adjust a comment to reflect reality.Reid Spencer2007-01-281-4/+4
| | | | llvm-svn: 33607
* 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-282-4/+5
| | | | llvm-svn: 33605
* Drop CSRET from here too.Nick Lewycky2007-01-281-1/+0
| | | | llvm-svn: 33604
* Fix compile error "jump to case label crosses initialization".Nick Lewycky2007-01-281-5/+6
| | | | | | What compiler are people using that accepts this code? llvm-svn: 33603
* Grammar fixAnton Korobeynikov2007-01-281-4/+5
| | | | llvm-svn: 33602
* Merge error at my side. Fixed.Anton Korobeynikov2007-01-284-294/+450
| | | | llvm-svn: 33601
* Document 'inreg' & 'sret'Anton Korobeynikov2007-01-281-19/+7
| | | | llvm-svn: 33600
* RegenerateAnton Korobeynikov2007-01-286-5677/+6350
| | | | llvm-svn: 33599
* Drop CSRET CCAnton Korobeynikov2007-01-282-126/+22
| | | | llvm-svn: 33598
* Propagate changes from my local tree. This patch includes:Anton Korobeynikov2007-01-2824-838/+502
| | | | | | | | | | | | | | | | | | | | | | 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
* This file has been dead for a long time. Remove it.Reid Spencer2007-01-281-191/+0
| | | | llvm-svn: 33596
* Regenerate.Reid Spencer2007-01-283-284/+388
| | | | llvm-svn: 33595
* For PR1137:Reid Spencer2007-01-281-10/+62
| | | | | | | | | | When a value is found to have the same name as another, try harder to disambiguate when its a type plane collapse issue and when it isn't. We traverse the type to see if it contains an integer. If it does not then we issue the error because it can't be resulting from integer type planes collapsing. Otherwise we just rename it, even if that's a bit of overkill. llvm-svn: 33594
* Test case for PR1137. This makes sure that we don't get erroneousReid Spencer2007-01-281-0/+21
| | | | | | "redefinition" errors that cause the upgrade to fail. llvm-svn: 33593
OpenPOWER on IntegriCloud