summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Remove FreeInst.Victor Hernandez2009-10-2640-402/+132
| | | | | | | Remove LowerAllocations pass. Update some more passes to treate free calls just like they were treating FreeInst. llvm-svn: 85176
* Prep for future __builtin_object_size refinements. The theory is thatMike Stump2009-10-261-0/+11
| | | | | | | | | | someone will add an llvm intrinsic for us to use, so the optimizer can figure out the hard cases. WIP. For those that want to help, double check with Eric before starting. He has a bit of code this will plug into. llvm-svn: 85175
* __builtin_object_size refinements. Also handle stack based objects. WIP.Mike Stump2009-10-263-1/+42
| | | | llvm-svn: 85174
* Try to get ahead of Johnny Chen and pro-actively add some more ARM encodingBob Wilson2009-10-261-2/+16
| | | | | | | bits. Johnny, please review -- I do not have a good track record of getting these right. llvm-svn: 85173
* Convert a few tests to FileCheck for PR5307.Edward O'Callaghan2009-10-263-4/+33
| | | | llvm-svn: 85171
* Convert a few tests to FileCheck for PR5307.Edward O'Callaghan2009-10-263-3/+10
| | | | llvm-svn: 85170
* Fix ARM encoding typo: Opcod3 is not passed to ASuI parent class.Bob Wilson2009-10-261-2/+2
| | | | | | Patch by Johnny Chen. llvm-svn: 85169
* Add more ARM instruction encodings for 's' bit set and "rs" register encodingBob Wilson2009-10-261-2/+18
| | | | | | bits. Patch by Johnny Chen. llvm-svn: 85167
* Allow the aggressive anti-dep breaker to process the same region multiple ↵David Goodwin2009-10-265-149/+263
| | | | | | times. This is necessary because new anti-dependencies are exposed when "current" ones are broken. llvm-svn: 85166
* Simplify this code. LoopDeletion doesn't need to explicit check thatDan Gohman2009-10-261-24/+2
| | | | | | | the loop exiting block dominates the latch block; if ScalarEvolution can prove that the trip-count is finite, that's sufficient. llvm-svn: 85165
* Code that checks WillNotOverflowSignedAdd before creating an AddDan Gohman2009-10-263-10/+10
| | | | | | can safely use the NSW bit on the Add. llvm-svn: 85164
* Unify Unix and Windows code paths when executing 'clang'.Ted Kremenek2009-10-261-7/+3
| | | | llvm-svn: 85163
* Remove unnecessary calls to 'flush()'.Ted Kremenek2009-10-261-8/+7
| | | | llvm-svn: 85162
* Update CMake files.Ted Kremenek2009-10-262-1/+2
| | | | llvm-svn: 85161
* Add Code gen support for '->*' operator which fellFariborz Jahanian2009-10-263-2/+22
| | | | | | through the crack. llvm-svn: 85160
* Teach BasicAA how to analyze Select instructions, and make it moreDan Gohman2009-10-262-2/+149
| | | | | | aggressive on PHI instructions. llvm-svn: 85158
* __builtin_object_size refinements. When we run out of object, be sureMike Stump2009-10-262-4/+24
| | | | | | to clamp at 0 bytes left. WIP. llvm-svn: 85157
* Convert a few tests to FileCheck for PR5307.Edward O'Callaghan2009-10-263-4/+21
| | | | llvm-svn: 85154
* Add 'fixit' hint on mis-use of pointer-to-memberFariborz Jahanian2009-10-262-2/+28
| | | | | | binary operators. llvm-svn: 85153
* Add some missing header files to the Xcode project.Steve Naroff2009-10-261-0/+14
| | | | llvm-svn: 85152
* Remove / use flags that are now set in the Makefile.config.Julien Lerouge2009-10-263-5/+1
| | | | llvm-svn: 85149
* Regenerate.Julien Lerouge2009-10-261-25/+38
| | | | llvm-svn: 85148
* Add an autoconf test to check for optional compiler flags likeJulien Lerouge2009-10-263-0/+14
| | | | | | -Wno-missing-field-initializers or -Wno-variadic-macros. llvm-svn: 85147
* Define virtual destructor in *.cpp file.David Goodwin2009-10-262-1/+4
| | | | llvm-svn: 85146
* Add aggressive anti-dependence breaker. Currently it is not the default for ↵David Goodwin2009-10-264-3/+829
| | | | | | any target. Enable with -break-anti-dependencies=all. llvm-svn: 85145
* Check in the experimental GEP splitter pass. This pass splits complexDan Gohman2009-10-263-0/+88
| | | | | | | | | | GEPs (more than one non-zero index) into simple GEPs (at most one non-zero index). In some simple experiments using this it's not uncommon to see 3% overall code size wins, because it exposes redundancies that can be eliminated, however it's tricky to use because instcombine aggressively undoes the work that this pass does. llvm-svn: 85144
* Add virtual destructor.David Goodwin2009-10-261-0/+2
| | | | llvm-svn: 85141
* Be sure to zero-extend. And refactor.Mike Stump2009-10-261-6/+1
| | | | llvm-svn: 85140
* Revert r85134, it breaks mingw buildAnton Korobeynikov2009-10-262-5/+3
| | | | llvm-svn: 85138
* Add CreateZExtOrBitCast and CreateSExtOrBitCast to TargetFolderDan Gohman2009-10-261-0/+10
| | | | | | for consistency with ConstantFolder. llvm-svn: 85137
* __builtin_object_size refinements. WIP.Mike Stump2009-10-262-0/+63
| | | | llvm-svn: 85136
* When checking whether a def of an aliased register is dead, ask theDan Gohman2009-10-261-1/+1
| | | | | | | | | | machineinstr whether the aliased register is dead, rather than the original register is dead. This allows it to get the correct answer when examining an instruction like this: CALLpcrel32 <ga:foo>, %AL<imp-def>, %EAX<imp-def,dead> where EAX is dead but a subregister of it is still live. This fixes PR5294. llvm-svn: 85135
* Make PIC16 overlay a loadable pass.Sanjiv Gupta2009-10-262-4/+4
| | | | llvm-svn: 85134
* Convert some driver checks to FileCheck.Sebastian Redl2009-10-264-79/+77
| | | | llvm-svn: 85133
* clang-cc: Allow building for x86_64 with -mmacosx-version-min=10.4.Daniel Dunbar2009-10-263-10/+4
| | | | llvm-svn: 85132
* Switch vtable to linkeonce_odr. Patch by nlewycky.Chandler Carruth2009-10-261-1/+1
| | | | llvm-svn: 85131
* Do not use expensive sort(). Devang Patel2009-10-261-4/+6
| | | | llvm-svn: 85130
* Add fixit hint to bitwise precedence warning.Sebastian Redl2009-10-262-11/+46
| | | | llvm-svn: 85129
* Some svn:ignore tweaks.Benjamin Kramer2009-10-260-0/+0
| | | | llvm-svn: 85128
* Break anti-dependence breaking out into its own class.David Goodwin2009-10-267-545/+737
| | | | llvm-svn: 85127
* Add support to encode type info using llvm::Constant.Devang Patel2009-10-262-0/+116
| | | | | | Patch by Talin! llvm-svn: 85126
* assert -> llvm_unreachableDouglas Gregor2009-10-261-1/+1
| | | | llvm-svn: 85125
* Fix a typo in a comment.Dan Gohman2009-10-261-1/+1
| | | | llvm-svn: 85120
* reapply r85085 with a bugfix to avoid infinite looping.Chris Lattner2009-10-262-9/+47
| | | | | | | All of the 'demorgan' related xforms need to use dyn_castNotVal, not m_Not. llvm-svn: 85119
* Make LSR's OptimizeShadowIV ignore induction variables with negativeDan Gohman2009-10-262-0/+29
| | | | | | | | | | strides for now, because it doesn't handle them correctly. This fixes a miscompile of SingleSource/Benchmarks/Misc-C++/ray. This problem was usually hidden because indvars transforms such induction variables into negations of canonical induction variables. llvm-svn: 85118
* Implement a warning for mixing bitwise logical with comparison ops. Fixes ↵Sebastian Redl2009-10-263-0/+73
| | | | | | PR5297. llvm-svn: 85117
* Rename -nostdclanginc to -nobuiltininc.Rafael Espindola2009-10-263-5/+5
| | | | llvm-svn: 85116
* 'error' is usually used as a noreturn function. This can suppress some falseZhongxing Xu2009-10-261-11/+4
| | | | | | | warnings. Eventually we need a way to import externally defined functions summaries. llvm-svn: 85092
* - Revert some changes from 85044, 85045, and 85047 that broke x86_64 tests andEvan Cheng2009-10-265-45/+218
| | | | | | | | | | | | | | | | | | | | | | | | | | bootstrapping. It's not safe to leave identity subreg_to_reg and insert_subreg around. - Relax register scavenging to allow use of partially "not-live" registers. It's common for targets to operate on registers where the top bits are undef. e.g. s0 = d0 = insert_subreg d0<undef>, s0, 1 ... = d0 When the insert_subreg is eliminated by the coalescer, the scavenger used to complain. The previous fix was to keep to insert_subreg around. But that's brittle and it's overly conservative when we want to use the scavenger to allocate registers. It's actually legal and desirable for other instructions to use the "undef" part of d0. e.g. s0 = d0 = insert_subreg d0<undef>, s0, 1 ... s1 = = s1 = d0 We probably need add a "partial-undef" marker on machine operand so the machine verifier would not complain. llvm-svn: 85091
* Revert 85085. It causes infinite looping during llvm-gcc build.Evan Cheng2009-10-262-45/+7
| | | | llvm-svn: 85090
OpenPOWER on IntegriCloud