summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix a misoptimization in aha.Owen Anderson2007-07-311-11/+25
| | | | llvm-svn: 40642
* Use SCEVExpander::InsertCastOfTo instead of calling new IntToPtrInstDan Gohman2007-07-311-5/+12
| | | | | | | directly, because the insert point used by the SCEVExpander may vary from what LSR originally computes. llvm-svn: 40641
* Add note.Devang Patel2007-07-311-1/+3
| | | | llvm-svn: 40638
* Revert overly aggressive interpretation of noaliasChristopher Lamb2007-07-311-32/+1
| | | | llvm-svn: 40635
* Regenerate.Reid Spencer2007-07-312-954/+954
| | | | llvm-svn: 40634
* After a discussion with Anton, it turns out that the InReg attribute is notReid Spencer2007-07-312-2/+2
| | | | | | permitted on function results. So, revert the last patch to make it illegal. llvm-svn: 40632
* Redo and generalize previously removed opt for pinsrw: (vextract (v4i32 bc ↵Evan Cheng2007-07-316-235/+248
| | | | | | (v4f32 s2v (f32 load ))), 0) -> (i32 load ) llvm-svn: 40628
* Loop unswitch preserves dom info.Devang Patel2007-07-311-18/+33
| | | | | | Use simple analysis interface to preserve analysis info maintained by other loop passes. llvm-svn: 40627
* Implement Simple Analysis interfaces - cloneBasicBlockAnalysis and ↵Devang Patel2007-07-311-0/+26
| | | | | | deleteAnalysisValue. llvm-svn: 40626
* Introduce Simple Analysis interface for loop passes.Devang Patel2007-07-311-0/+21
| | | | | | Right now, this interface provides hooks for only to operations, 1) clone basic block 2) delete value. llvm-svn: 40625
* Teach BasicAA about noalias function parameters. Passes all of DejaGNU and ↵Christopher Lamb2007-07-311-1/+32
| | | | | | test-suite. llvm-svn: 40624
* Regenerate.Reid Spencer2007-07-312-954/+954
| | | | llvm-svn: 40621
* Allow the INREG parameter attribute to be added to functions. This permits theReid Spencer2007-07-311-0/+1
| | | | | | | | function result to be passed in a register. This implements the GCC regparm function attribute for llvm by translation to the InReg parameter attribute and fixes test/CFrontend/2002-07-30-SubregSetAssertion.c llvm-svn: 40619
* The InReg parameter attribute is valid on function results. The llvm-gcc-4.0Reid Spencer2007-07-311-2/+1
| | | | | | | front end converts regparm attribute on the gcc function into InReg attribute on the llvm function. This fixes test/CFrontend/2002-07-30-SubrefSetAssertion.c llvm-svn: 40618
* This isn't safe when there are uses of load's chain result.Evan Cheng2007-07-311-11/+4
| | | | llvm-svn: 40617
* Fix PR1581, patch by Timo SavolaChris Lattner2007-07-311-1/+1
| | | | llvm-svn: 40616
* Regenerate (again).Reid Spencer2007-07-312-148/+146
| | | | llvm-svn: 40613
* Don't include newlines in the whitespace before newline (WSNL) rule.Reid Spencer2007-07-311-2/+2
| | | | | | Fix the comment for WSNL to describe its actual function. llvm-svn: 40612
* Regenerate.Reid Spencer2007-07-315-4074/+5321
| | | | llvm-svn: 40611
* For PR1553:Reid Spencer2007-07-312-0/+8
| | | | | | | | Make the AsmParser auto-upgrade the old zext and sext keywords for parameter attributes and handle the end-of-line ambiguity. llvm-svn: 40610
* If loop can be unswitched again, then do it yourself.Devang Patel2007-07-301-5/+19
| | | | llvm-svn: 40609
* Add a comment: don't expect from external function resolver in interpreterAnton Korobeynikov2007-07-301-0/+5
| | | | | | things, it wasn't designed to handle. llvm-svn: 40608
* Avoid potential iterator invalidation problems.Owen Anderson2007-07-301-1/+4
| | | | llvm-svn: 40607
* Remove dead code.Devang Patel2007-07-301-19/+13
| | | | llvm-svn: 40606
* - Allow custom lowering for CTPOP, CTTZ, CTLZ.Scott Michel2007-07-301-2/+9
| | | | | | - Fixed an existing unexpanded tab. llvm-svn: 40605
* LCSSA preserves dom info.Devang Patel2007-07-301-0/+8
| | | | llvm-svn: 40604
* Loop Rotation pass preserves dominator tree and frontier.Devang Patel2007-07-301-0/+2
| | | | llvm-svn: 40603
* LICM preserves scalar evolution and dom frontier.Devang Patel2007-07-301-0/+3
| | | | llvm-svn: 40602
* Add detection of __dso_handle presence during configure. Use this ↵Anton Korobeynikov2007-07-301-15/+20
| | | | | | | | | information in the JITer (short path is added for darwin). This is needed to properly JIT llvm-gcc-4.2-built binaries, since cxa_atexit is enabled by default on much more targets. llvm-svn: 40600
* Fix a typo/thinko.Reid Spencer2007-07-301-1/+1
| | | | llvm-svn: 40599
* Fix a bug in getCopyFromParts turned up in the testcase for PR1132.Dan Gohman2007-07-301-3/+3
| | | | llvm-svn: 40598
* Use more caching when computing non-local dependence. This makes bzip2 notOwen Anderson2007-07-302-1/+5
| | | | | | use up the entire 32-bit address space. llvm-svn: 40596
* Fix a bug caused by indiscriminantly asking for the dominators of a predecessor.Owen Anderson2007-07-301-3/+4
| | | | llvm-svn: 40595
* Use tabs more consistently in assembler pseudo-ops.Dan Gohman2007-07-302-5/+5
| | | | llvm-svn: 40594
* Print a space between the comment character and the basic block name,Dan Gohman2007-07-301-1/+2
| | | | | | for prettiness. llvm-svn: 40593
* Fix the comment for getClosestTargetForJIT to reflect the fact thatDan Gohman2007-07-301-4/+3
| | | | | | it does not have a Module parameter. llvm-svn: 40590
* More explicit keywords.Dan Gohman2007-07-302-2/+2
| | | | llvm-svn: 40589
* Fix pastos in comments for doFinalization functions.Dan Gohman2007-07-301-2/+2
| | | | llvm-svn: 40588
* Vector fneg must be expanded into fsub -0.0, X.Evan Cheng2007-07-303-2/+21
| | | | llvm-svn: 40586
* Change the x86 backend to use extract_subreg for truncation operations. ↵Christopher Lamb2007-07-296-113/+37
| | | | | | Passes DejaGnu, SingleSource and MultiSource. llvm-svn: 40578
* Add register info needed to use subreg sets on X86.Christopher Lamb2007-07-281-2/+51
| | | | llvm-svn: 40572
* Add facility to dump pass manager structure Devang Patel2007-07-271-0/+12
| | | | | | to make it easier to understand failure. llvm-svn: 40567
* Trampoline codegen support for X86-32.Duncan Sands2007-07-275-12/+130
| | | | llvm-svn: 40566
* Fix edge cases in handling basic block split.Devang Patel2007-07-271-3/+12
| | | | llvm-svn: 40564
* Use SmallPtrSet.Devang Patel2007-07-273-5/+5
| | | | llvm-svn: 40560
* VStudio compiler errors and placing Function*->ExFunc map under ↵Chuck Rose III2007-07-272-7/+8
| | | | | | | | | | | | | ManagedStatic control. This commit fixes two things. One is a pair of VStudio compiler errors stemming from variables which defined within the for loop statement and also within the body of the for loop. I fixed these by renaming one of the two variables. Additionally, I've made the Function*->ExFunc map in ExternalFunctions.cpp a ManagedStatic object, so that cleanup will be done on llvm_shutdown. In repeated uses of the interpreter, where the same Function* address may get used for completely differnet functions, this was causing a crash. llvm-svn: 40558
* Allow SmallPtrSet to hold pointers to const data.Owen Anderson2007-07-271-20/+20
| | | | llvm-svn: 40556
* Re-apply 40504, but with a fix for the segfault it caused in oggenc:Dan Gohman2007-07-273-75/+42
| | | | | | | | | Make the alignedload and alignedstore patterns always require 16-byte alignment. This way when they are used in the "Fs" instructions, in which a vector instruction is used for a scalar purpose, they can still require the full vector alignment. And add a regression test for this. llvm-svn: 40555
* It seems logical that InReg should be incompatibleDuncan Sands2007-07-271-3/+2
| | | | | | with StructReturn and ByVal, so make it so. llvm-svn: 40554
* As the number of parameter attributes increases,Duncan Sands2007-07-271-39/+55
| | | | | | | | | | | | | | | | | | | | Verifier::visitFunction is suffering a combinatorial explosion due to the number of mutually incompatible attributes. This patch tidies the whole thing up using attribute masks. While there I fixed some small bugs: (1) the ByVal attribute tests cast a type to a pointer type, which can fail. Yes, the fact it is of a pointer type is checked before, but a failing check does not cause the program to exit, it continues on outputting further errors; (2) Nothing was checking that an sret attribute is on the first parameter; (3) nothing was checking that a function for which isStructReturn() is true has a parameter with the sret attribute and vice-versa (I don't think it is possible for this to go wrong, but it seems right to check it). llvm-svn: 40553
OpenPOWER on IntegriCloud