summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Rewrite the removeAttr() method.Bill Wendling2013-01-282-52/+40
| | | | | | | | | | This now uses the AttributeSet object instead of the Attribute / AttributeWithIndex objects. It's fairly simple now. It goes through all of the subsets before the one we're modifying, adds them to the new set. It then adds the modified subset (with the requested attributes removed). And then adds the rest of the subsets. llvm-svn: 173660
* Rewrite the addAttr() method.Bill Wendling2013-01-282-89/+91
| | | | | | | | | This now uses the AttributeSet object instead of the Attribute / AttributeWithIndex objects. It's fairly simple now. It goes through all of the subsets before the one we're modifying, adds them to the new set. It then adds the modified subset. And then adds the rest of the subsets. llvm-svn: 173659
* Fix a typo in the name of a tooling unit testHal Finkel2013-01-281-1/+1
| | | | llvm-svn: 173658
* Fix the indentation of the first line of preprocessor outputHal Finkel2013-01-282-1/+12
| | | | | | | | | | The -E output from clang did not produce the correct indentation on the first line. This is because MoveToLine returned false, and when this happens, the regular process for producing initial indentation is skipped. Thanks to Eli for suggesting a way to simplify this to a one-line change. llvm-svn: 173657
* Revert r173646, "Use proper type for the index."NAKAMURA Takumi2013-01-282-15/+15
| | | | | | Unfortunately, msvc miscompiles it. Investigating. llvm-svn: 173656
* [ELF] Use entry point from LinkerOptions.Michael J. Spencer2013-01-287-7/+73
| | | | | | Patch by Ahmed Bougacha! llvm-svn: 173655
* Refactored out pass ObjCARCAPElim from ObjCARCOpts.cpp => ObjCARCAPElim.cpp.Michael Gottesman2013-01-283-148/+183
| | | | llvm-svn: 173654
* Fixed case insensitive issue.Michael Gottesman2013-01-281-1/+1
| | | | llvm-svn: 173653
* Removed extraneous doxygen end module statement.Michael Gottesman2013-01-281-2/+0
| | | | llvm-svn: 173652
* Extracted pass ObjCARCExpand from ObjCARC.cpp => ObjCARCExpand.cpp.Michael Gottesman2013-01-285-299/+370
| | | | | | | I also added the local header ObjCARC.h for common functions used by the various passes. llvm-svn: 173651
* Improved svn repo searching for 'make update'Edwin Vane2013-01-281-4/+17
| | | | | | | | Use a simple recursive bash function to search for svn repos for the 'make update' target thus including projects like clang-tools-extra. Reviewers: bkramer, echristo llvm-svn: 173650
* Make some code a little simpler.Reed Kotler2013-01-282-40/+40
| | | | llvm-svn: 173649
* Since ObjCARC has been refactored into its own library with its own ↵Michael Gottesman2013-01-281-0/+1
| | | | | | declaration header, we need to include the declaration header alongside Scalar.h in BackendUtil. llvm-svn: 173648
* Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation ↵Michael Gottesman2013-01-2825-42/+152
| | | | | | for refactoring the ARC Optimizer. llvm-svn: 173647
* Use proper type for the index.Bill Wendling2013-01-282-15/+15
| | | | llvm-svn: 173646
* Tests and a minor bugfix for [dcl.attr.depend]p1 (C++11 [[carries_dependency]]Richard Smith2013-01-282-1/+19
| | | | | | attribute). llvm-svn: 173645
* Remove another use of AttributeWithIndex, using the AttributeSetImpl ↵Bill Wendling2013-01-281-6/+14
| | | | | | accessors instead. llvm-svn: 173644
* Add a -pedantic warning: an anonymous union within an anonymous union is notRichard Smith2013-01-284-7/+16
| | | | | | | permitted in standard C++, despite being silently accepted by many (all?) major C++ implementations. llvm-svn: 173643
* Remove another use of AttributeWithIndex, using the AttributeSetImpl ↵Bill Wendling2013-01-281-6/+8
| | | | | | accessors instead. llvm-svn: 173642
* Remove a use of AttributeWithIndex.Bill Wendling2013-01-282-13/+33
| | | | | | | | | | We want to remove AttributeWithIndex because it provides a non-encapsulated view of the AttributeSetImpl object. Instead, use accessor methods and iterators. Eventually, this code can be simplified because the Attribute object will hold only one attribute instead of multiple attributes. llvm-svn: 173641
* Improve the debug output a bit.Bill Wendling2013-01-271-2/+7
| | | | llvm-svn: 173640
* Use proper return type for attribute index.Bill Wendling2013-01-272-2/+2
| | | | llvm-svn: 173639
* Use proper return type for attribute index.Bill Wendling2013-01-271-1/+1
| | | | llvm-svn: 173638
* Push the calculation of the 'Raw' attribute mask down into the ↵Bill Wendling2013-01-273-10/+29
| | | | | | implementation. It in turn uses the correct list for calculating the 'Raw' value. llvm-svn: 173637
* Don't erase these methods. They're used during testing.Bill Wendling2013-01-271-0/+3
| | | | llvm-svn: 173636
* Add special 'get' methods to create an Attribute with an alignment. Also do ↵Bill Wendling2013-01-272-14/+22
| | | | | | some random cleanup. No functionality change. llvm-svn: 173635
* [XCore] Add missing l2rus instructions.Richard Osborne2013-01-273-1/+20
| | | | | | | These instructions are not targeted by the compiler but they are needed for the MC layer. llvm-svn: 173634
* Comment parsing: fix test in r173626 for -fms-extensions -fms-compatibilityDmitri Gribenko2013-01-271-1/+1
| | | | llvm-svn: 173633
* Privitize some the copy c'tor and assignment operator of uniquified objects.Bill Wendling2013-01-271-0/+8
| | | | llvm-svn: 173632
* Add some helpful comments.Bill Wendling2013-01-271-6/+15
| | | | llvm-svn: 173631
* Decl printer: fix CXXConstructExpr with implicit default argumentDmitri Gribenko2013-01-272-3/+28
| | | | | | Patch by Will Wilson. llvm-svn: 173630
* [XCore] Add missing l2r instructions.Richard Osborne2013-01-272-1/+24
| | | | | | | These instructions are not targeted by the compiler but they are needed for the MC layer. llvm-svn: 173629
* s/AttrList/pImpl/g in AttributeSet. No functionality change.Bill Wendling2013-01-272-31/+31
| | | | llvm-svn: 173628
* Start using more of the AttrNode in the AttributeSetImpl class.Bill Wendling2013-01-272-10/+11
| | | | | | Also add some asserts. llvm-svn: 173627
* Comment parsing: attach any tag type's documentation to its typedef if latterDmitri Gribenko2013-01-273-5/+55
| | | | | | | | does not have one of its own. // rdar://13067629 Original patch (r173586 and r173587) by Fariborz Jahanian, modified by me. llvm-svn: 173626
* Legalizer: Reword comment again, per Duncan's suggestion.Benjamin Kramer2013-01-271-3/+2
| | | | llvm-svn: 173625
* [XCore] Add missing 1r instructions.Richard Osborne2013-01-272-6/+48
| | | | | | | These instructions are not targeted by the compiler but they are needed for the MC layer. llvm-svn: 173624
* [XCore] Add missing 0r instructions.Richard Osborne2013-01-272-3/+95
| | | | | | | These instructions are not targeted by the compiler but they are needed for the MC layer. llvm-svn: 173623
* PR15067: Don't assert when a UCN appears in a C90 file.Jordan Rose2013-01-274-8/+16
| | | | | | | Unfortunately, we can't accept the UCN as an extension because we're required to treat it as two tokens for preprocessing purposes. llvm-svn: 173622
* BBVectorize: Better use of TTI->getShuffleCostHal Finkel2013-01-271-4/+23
| | | | | | | | | | | | | | | | | | | | When flipping the pair of subvectors that form a vector, if the vector length is 2, we can use the SK_Reverse shuffle kind to get more-accurate cost information. Also we can use the SK_ExtractSubvector shuffle kind to get accurate subvector extraction costs. The current cost model implementations don't yet seem complex enough for this to make a difference (thus, there are no test cases with this commit), but it should help in future. Depending on how the various targets optimize and combine shuffles in practice, we might be able to get more-accurate costs by combining the costs of multiple shuffle kinds. For example, the cost of flipping the subvector pairs could be modeled as two extractions and two subvector insertions. These changes, however, should probably be motivated by specific test cases. llvm-svn: 173621
* Legalizer: Add an assert and tweak a comment to clarify the assumptions this ↵Benjamin Kramer2013-01-271-1/+5
| | | | | | code makes. llvm-svn: 173620
* AddCompilerRT.cmake: Try to unbreak since r173617.NAKAMURA Takumi2013-01-271-1/+1
| | | | llvm-svn: 173619
* In the AttributeSetImpl c'tor, fill in the AttrNodes data structure with the ↵Bill Wendling2013-01-272-8/+42
| | | | | | attributes being passed in. llvm-svn: 173618
* [CMake][Lit][unittests] Cleanup in AddLLVM.cmake.NAKAMURA Takumi2013-01-271-8/+1
| | | | llvm-svn: 173617
* [CMake][Lit][unittests] Deprecate CMAKE_BUILD_TYPE in each build directory ↵NAKAMURA Takumi2013-01-274-27/+6
| | | | | | | | | | | | | | | | | | | | | | | | for unittests. For example, cur) unittests/ADT/Release/ADTTests new) unittests/ADT/ADTTests RUNTIME_BUILD_MODE can be substituted to CMAKE_CFG_INTDIR. With Make and Ninja, the tree is not built with multiple configurations. Then, including the build type in target directory doesn't make sense. See also "How can I build multiple modes without switching?" http://www.cmake.org/Wiki/CMake_FAQ CMAKE_CFG_INTDIR is set to "." With multiple-configuration-aware build system, like Visual Studio, each unittest is built on appropriate directory, for example, unittests/ADT/Release/ADTTests.exe CMAKE_CFG_INTDIR is set to build system's variable, like "$(Configuration)" or "$(OutDir)". Thus, "--param build_config" is also deprecated. llvm-svn: 173616
* When the legalizer is splitting vector shifts, the result may not have the ↵Benjamin Kramer2013-01-272-2/+20
| | | | | | | | | | | | | | | right shift amount type. Fix that by adding a cast to the shift expander. This came up with vector shifts on sse-less X86 CPUs. <2 x i64> = shl <2 x i64> <2 x i64> -> i64,i64 = shl i64 i64; shl i64 i64 -> i32,i32,i32,i32 = shl_parts i32 i32 i64; shl_parts i32 i32 i64 Now we cast the last two i64s to the right type. Fixes the crash in PR14668. llvm-svn: 173615
* Revert r173586 (and r173587) , "Attach any tag type's documentation to its ↵NAKAMURA Takumi2013-01-272-10/+4
| | | | | | | | typedef if" It caused unexpected warnings with @tparam. llvm-svn: 173614
* Fix miscompile. Add back the use of the ArrayRef version of the ::get method.Bill Wendling2013-01-272-3/+6
| | | | llvm-svn: 173613
* Rearrange some deckchairs. Moving the class before it's use.Bill Wendling2013-01-271-17/+16
| | | | llvm-svn: 173612
* Remove dead methods.Bill Wendling2013-01-272-23/+3
| | | | llvm-svn: 173611
OpenPOWER on IntegriCloud