summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Move some of the InlineSpiller rematerialization code into LiveRangeEdit.Jakob Stoklund Olesen2010-10-203-41/+148
| | | | llvm-svn: 116951
* Remove Synthesizable from the Type system; as MMX vectorDale Johannesen2010-10-204-27/+13
| | | | | | | types are no longer Legal on X86, we don't need it. No functional change. 8499854. llvm-svn: 116947
* When SimpleRegisterCoalescing is trimming kill flags on a physical registerJakob Stoklund Olesen2010-10-201-1/+11
| | | | | | | | | | | operand, also check if subregisters are killed. Add <imp-def> operands for subregisters that remain alive after a super register is killed. I don't have a testcase for this that reproduces on trunk. <rdar://problem/8441758> llvm-svn: 116940
* Handle _GLOBAL_OFFSET_TABLE_ correctly.Rafael Espindola2010-10-202-0/+45
| | | | llvm-svn: 116932
* Use C++03...Michael J. Spencer2010-10-201-1/+6
| | | | llvm-svn: 116927
* System-Win32/Path: Fix incorrect assumption in isValid.Michael J. Spencer2010-10-201-0/+9
| | | | | | | A recent commit to clang exposed a bug in the Win32 Path code. This is a minimal fix for it. llvm-svn: 116925
* Add a comment about ATTRIBUTE_UNUSED to avoid further confusion over when toChandler Carruth2010-10-201-0/+8
| | | | | | use it. llvm-svn: 116920
* Remove remaining uses of ATTRIBUTE_UNUSED on variables, and delete threeChandler Carruth2010-10-203-6/+2
| | | | | | #includes in the process. llvm-svn: 116919
* Fix a TODO by removing some unnecesary copies.Eric Christopher2010-10-201-13/+5
| | | | llvm-svn: 116915
* Record sysbols created by aliases. Fixes PR8414.Rafael Espindola2010-10-201-0/+9
| | | | llvm-svn: 116910
* Add ATTRIBUTE_UNUSED for -Asserts.NAKAMURA Takumi2010-10-202-4/+4
| | | | llvm-svn: 116909
* Add RegionPass support.Tobias Grosser2010-10-208-1/+535
| | | | | | | A RegionPass is executed like a LoopPass but on the regions detected by the RegionInfo pass instead of the loops detected by the LoopInfo pass. llvm-svn: 116905
* Fix CMake buildDouglas Gregor2010-10-201-0/+1
| | | | llvm-svn: 116903
* Add a way to emit StringSwitch of clang attribute spellings.Anders Carlsson2010-10-203-0/+37
| | | | llvm-svn: 116899
* Fix backwards conditional.Jim Grosbach2010-10-201-1/+1
| | | | llvm-svn: 116897
* Make CodeGen TBAA-aware.Dan Gohman2010-10-2010-37/+92
| | | | llvm-svn: 116890
* Add dynamic realignment when rematerializing the base register.Jim Grosbach2010-10-201-0/+13
| | | | llvm-svn: 116886
* Nuke a commented out bit that got missed a while back.Jim Grosbach2010-10-191-1/+1
| | | | llvm-svn: 116883
* Spelling typo fix. s/incput/input/. Thanks, Bob!Jim Grosbach2010-10-191-1/+1
| | | | llvm-svn: 116880
* Add a pre-dispatch SjLj EH hook on the unwind edge for targets to do anyJim Grosbach2010-10-1913-18/+135
| | | | | | | setup they require. Use this for ARM/Darwin to rematerialize the base pointer from the frame pointer when required. rdar://8564268 llvm-svn: 116879
* Move NoAA out of BasicAliasAnalysis.cpp into its own file, now thatDan Gohman2010-10-195-96/+93
| | | | | | | it doesn't have a special relationship with BasicAliasAnalysis anymore. llvm-svn: 116876
* Reapply r116831 and r116839, converting AliasAnalysis to useDan Gohman2010-10-1913-89/+93
| | | | | | uint64_t, plus fixes for places I missed before. llvm-svn: 116875
* Extend StringRef's edit-distance algorithm to permit an upper bound on the ↵Douglas Gregor2010-10-192-2/+14
| | | | | | allowed edit distance llvm-svn: 116867
* Update comments to remove obsolete references.Jim Grosbach2010-10-191-6/+5
| | | | llvm-svn: 116863
* Revert r116831 and r116839, which are breaking selfhost builds.Dan Gohman2010-10-199-76/+74
| | | | llvm-svn: 116858
* Shrink MachineOperand from 40 to 32 bytes on 64-bit hosts.Jakob Stoklund Olesen2010-10-192-9/+21
| | | | | | | | | | | | | Pull an unsigned out of the Contents union such that it has the same size as two pointers and no padding. Arrange members such that the Contents union and all pointers can be 8-byte aligned without padding. This speeds up code generation by 0.8% on a 64-bit host. 32-bit hosts should be unaffected. llvm-svn: 116857
* Passes do not need to recursively initialize passes that they preserve, ifOwen Anderson2010-10-198-16/+2
| | | | | | | they do not also require them. This allows us to reduce inter-pass linkage dependencies. llvm-svn: 116854
* Enable using vdup for vector constants which are splat ofDale Johannesen2010-10-193-73/+21
| | | | | | | integers by default, and remove the controlling flag, now that LICM will hoist such vdup's. 8003375. llvm-svn: 116852
* Remove extraneous slash.Owen Anderson2010-10-191-1/+1
| | | | llvm-svn: 116851
* Small cleanups and fixes in preparation for fixing _GLOBAL_OFFSET_TABLE_.Rafael Espindola2010-10-191-7/+11
| | | | llvm-svn: 116848
* Re-enable register pressure aware machine licm with fixes. Hoist() may haveEvan Cheng2010-10-1910-146/+148
| | | | | | | erased the instruction during LICM so UpdateRegPressureAfter() should not reference it afterwards. llvm-svn: 116845
* Oops, check in all the files for converting AliasAnalysis toDan Gohman2010-10-194-34/+34
| | | | | | use uint64_t. llvm-svn: 116839
* unittests: Use the correct defines and global variables when building on CMake.Michael J. Spencer2010-10-191-0/+2
| | | | llvm-svn: 116834
* Fix VC2010 build.Michael J. Spencer2010-10-191-3/+0
| | | | llvm-svn: 116833
* Factor out the call-once implementation into its own macro.Owen Anderson2010-10-191-70/+21
| | | | llvm-svn: 116832
* Change AliasAnalysis and its clients to use uint64_t instead of unsignedDan Gohman2010-10-195-40/+42
| | | | | | for representing object sizes, for consistency with other parts of LLVM. llvm-svn: 116831
* Fixing r116753 r116756 r116777Jason W Kim2010-10-1933-584/+619
| | | | | | | | | | | | | | | | | | | The failures in r116753 r116756 were caused by a python issue - Python likes to append 'L' suffix to stringified numbers if the number is larger than a machine int. Unfortunately, this causes a divergence of behavior between 32 and 64 bit python versions. I re-crafted elf-dump/common_dump to take care of these issues by: 1. always printing 0x (makes for easy sed/regex) 2. always print fixed length (exactly 2 + numBits/4 digits long) by mod ((2^numBits) - 1) 3. left-padded with '0' There is a residual common routine that is also used by macho-dump (dataToHex) , so I left the 'section_data' test values alone. llvm-svn: 116823
* Get rid of static constructors for pass registration. Instead, every pass ↵Owen Anderson2010-10-19140-177/+561
| | | | | | | | | | | | | | | | | exposes an initializeMyPassFunction(), which must be called in the pass's constructor. This function uses static dependency declarations to recursively initialize the pass's dependencies. Clients that only create passes through the createFooPass() APIs will require no changes. Clients that want to use the CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h before parsing commandline arguments. I have tested this with all standard configurations of clang and llvm-gcc on Darwin. It is possible that there are problems with the static dependencies that will only be visible with non-standard options. If you encounter any crash in pass registration/creation, please send the testcase to me directly. llvm-svn: 116820
* Revert r116781 "- Add a hook for target to determine whether an instruction defDaniel Dunbar2010-10-1910-126/+121
| | | | | | is", which breaks some nightly tests. llvm-svn: 116816
* Consistently use AliasAnalysis::UnknownSize instead of hardcoding ~0u.Dan Gohman2010-10-195-25/+34
| | | | llvm-svn: 116815
* GlobalOpt: EvaluateFunction() must not evaluate stores to weak_odr globals.Mikhail Glushenkov2010-10-193-7/+51
| | | | | | Fixes PR8389. llvm-svn: 116812
* Trailing whitespace.Mikhail Glushenkov2010-10-191-1/+1
| | | | llvm-svn: 116811
* Add test case mov.ll for PTX device functionChe-Liang Chiou2010-10-191-0/+13
| | | | llvm-svn: 116806
* Add lower argument and return of device functionChe-Liang Chiou2010-10-197-9/+275
| | | | llvm-svn: 116805
* Fix spelling.Bill Wendling2010-10-191-1/+1
| | | | llvm-svn: 116804
* First step to allowing the resource directory of Clang to be adjusted forChandler Carruth2010-10-195-1/+34
| | | | | | | | | | strange packaging environments. The primary result of this is to expose a (normally empty) CLANG_RESOURCE_DIR string in the autoconf and CMake builds. This will in turn be used by a subsequent commit to Clang. Regenerated configure and config.h.in thanks to Nick. =D llvm-svn: 116802
* X86: Add MS-CRT libcalls.Michael J. Spencer2010-10-191-0/+2
| | | | llvm-svn: 116801
* Fix Whitespace.Michael J. Spencer2010-10-192-26/+26
| | | | llvm-svn: 116800
* lib/CodeGen/TargetLoweringObjectFileImpl.cpp: Tweak to emit ↵NAKAMURA Takumi2010-10-191-5/+5
| | | | | | | | ".{section}${name}" instead of ".{section}$linkonce_{name}" for linkonce sections. It seems GNU ld/PECOFF relies on section names, linking with g++'s libstdc++.a would fail. llvm-svn: 116791
* Fix for machine licm assert: RCCost <= RegPressure[RCId]Andrew Trick2010-10-191-2/+2
| | | | | | | in MultiSource/Benchmarks/VersaBench/beamformer/beamformer. SmallSet.insert returns true if the element is inserted. llvm-svn: 116790
OpenPOWER on IntegriCloud