Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Add the "ForceSizeOpt" attribute. | Nadav Rotem | 2012-10-22 | 1 | -2/+5 | |
| | | | | | | | | | | | | Patch by Quentin Colombet <qcolombet@apple.com> Original description: """ The attached patch is the first step to have a better control on Oz related optimizations. The Oz optimization level focuses on code size, thus I propose to add an attribute called ForceSizeOpt. """ llvm-svn: 166422 | |||||
* | DataLayout should use itself when calculating the size of a vector. | Hal Finkel | 2012-10-21 | 1 | -2/+4 | |
| | | | | | | | | This is important for vectors of pointers because only DataLayout, not the underlying vector type, knows how to calculate the size of the pointers in the vector. Fixes PR14138. llvm-svn: 166401 | |||||
* | Reapply the TargerTransformInfo changes, minus the changes to LSR and ↵ | Nadav Rotem | 2012-10-18 | 2 | -0/+28 | |
| | | | | | | Lowerinvoke. llvm-svn: 166248 | |||||
* | Temporarily revert the TargetTransform changes. | Bob Wilson | 2012-10-18 | 2 | -28/+0 | |
| | | | | | | | | | | | The TargetTransform changes are breaking LTO bootstraps of clang. I am working with Nadav to figure out the problem, but I am reverting it for now to get our buildbots working. This reverts svn commits: 165665 165669 165670 165786 165787 165997 and I have also reverted clang svn 165741 llvm-svn: 166168 | |||||
* | Revert r166157 because some tests fail... | Bill Wendling | 2012-10-17 | 1 | -3/+1 | |
| | | | | llvm-svn: 166159 | |||||
* | Check that the operand of the GEP is not the GEP itself. This occurred ↵ | Bill Wendling | 2012-10-17 | 1 | -1/+3 | |
| | | | | | | during an LTO build of LLVM. llvm-svn: 166157 | |||||
* | Cleanup whitespace. | Bill Wendling | 2012-10-16 | 1 | -1/+2 | |
| | | | | llvm-svn: 166016 | |||||
* | Cleanup whitespace. | Bill Wendling | 2012-10-16 | 1 | -37/+35 | |
| | | | | llvm-svn: 166013 | |||||
* | Have AttributesImpl defriend the Attributes class. | Bill Wendling | 2012-10-16 | 2 | -3/+3 | |
| | | | | llvm-svn: 166012 | |||||
* | Have AttrBuilder defriend the Attributes class. | Bill Wendling | 2012-10-16 | 1 | -3/+3 | |
| | | | | llvm-svn: 166011 | |||||
* | Put simple c'tors inline. | Bill Wendling | 2012-10-16 | 1 | -6/+1 | |
| | | | | llvm-svn: 166008 | |||||
* | Move the Attributes::Builder outside of the Attributes class and into its ↵ | Bill Wendling | 2012-10-15 | 3 | -35/+73 | |
| | | | | | | own class named AttrBuilder. No functionality change. llvm-svn: 165960 | |||||
* | Add an enum for the return and function indexes into the AttrListPtr object. ↵ | Bill Wendling | 2012-10-15 | 2 | -6/+8 | |
| | | | | | | This gets rid of some magic numbers. llvm-svn: 165924 | |||||
* | Use a ::get method to create the attribute from Attributes::AttrVals instead ↵ | Bill Wendling | 2012-10-15 | 1 | -8/+7 | |
| | | | | | | of a constructor. llvm-svn: 165923 | |||||
* | Move the AttributesImpl header file into the VMCore directory so that it can ↵ | Bill Wendling | 2012-10-15 | 3 | -1/+57 | |
| | | | | | | be opaque. llvm-svn: 165920 | |||||
* | Attributes Rewrite | Bill Wendling | 2012-10-15 | 5 | -32/+43 | |
| | | | | | | | | | | Convert the internal representation of the Attributes class into a pointer to an opaque object that's uniqued by and stored in the LLVMContext object. The Attributes class then becomes a thin wrapper around this opaque object. Eventually, the internal representation will be expanded to include attributes that represent code generation options, etc. llvm-svn: 165917 | |||||
* | Remove dead methods. | Bill Wendling | 2012-10-14 | 1 | -8/+0 | |
| | | | | llvm-svn: 165902 | |||||
* | Remove operator cast method in favor of querying with the correct method. | Bill Wendling | 2012-10-14 | 1 | -2/+2 | |
| | | | | llvm-svn: 165899 | |||||
* | Fix use after free when deleting attributes in a chained folding set. | Benjamin Kramer | 2012-10-14 | 1 | -3/+5 | |
| | | | | | | Can't follow the intrusive linked list when the element is gone. llvm-svn: 165898 | |||||
* | Don't use the new syntax just yet. | Bill Wendling | 2012-10-14 | 1 | -2/+2 | |
| | | | | llvm-svn: 165897 | |||||
* | Remove the bitwise AND operators from the Attributes class. Replace it with ↵ | Bill Wendling | 2012-10-14 | 2 | -11/+4 | |
| | | | | | | the equivalent from the builder class. llvm-svn: 165896 | |||||
* | Remove the bitwise assignment OR operator from the Attributes class. Replace ↵ | Bill Wendling | 2012-10-14 | 4 | -12/+13 | |
| | | | | | | it with the equivalent from the builder class. llvm-svn: 165895 | |||||
* | Remove the bitwise OR operator from the Attributes class. Replace it with ↵ | Bill Wendling | 2012-10-14 | 1 | -7/+9 | |
| | | | | | | the equivalent from the builder class. llvm-svn: 165894 | |||||
* | Remove the bitwise XOR operator from the Attributes class. Replace it with ↵ | Bill Wendling | 2012-10-14 | 1 | -3/+0 | |
| | | | | | | the equivalent from the builder class. llvm-svn: 165893 | |||||
* | Remove the bitwise NOT operator from the Attributes class. Replace it with ↵ | Bill Wendling | 2012-10-14 | 4 | -13/+16 | |
| | | | | | | the equivalent from the builder class. llvm-svn: 165892 | |||||
* | Decode the LLVM attributes from bitcode using the attributes builder. | Bill Wendling | 2012-10-14 | 1 | -0/+5 | |
| | | | | llvm-svn: 165891 | |||||
* | Use builder to create alignment attributes. Remove dead function. | Bill Wendling | 2012-10-14 | 2 | -9/+12 | |
| | | | | llvm-svn: 165890 | |||||
* | Add the LLVM context to this c'tor. It will be needed in the future. | Bill Wendling | 2012-10-11 | 1 | -1/+1 | |
| | | | | llvm-svn: 165687 | |||||
* | Support a common idiom on how to build an Attributes class with a single ↵ | Bill Wendling | 2012-10-11 | 1 | -0/+3 | |
| | | | | | | attribute. llvm-svn: 165686 | |||||
* | Add a new interface to allow IR-level passes to access codegen-specific ↵ | Nadav Rotem | 2012-10-10 | 2 | -0/+28 | |
| | | | | | | information. llvm-svn: 165665 | |||||
* | Revert r165652: "Remove unnecessary RTTI from the build." | Sean Silva | 2012-10-10 | 2 | -0/+3 | |
| | | | | | | ... Apparently the RTTI is still necessary for some reason. llvm-svn: 165654 | |||||
* | Remove unnecessary RTTI from the build. | Sean Silva | 2012-10-10 | 2 | -3/+0 | |
| | | | | llvm-svn: 165652 | |||||
* | Cleanup. Get rid of now dead code. | Bill Wendling | 2012-10-10 | 1 | -2/+0 | |
| | | | | llvm-svn: 165613 | |||||
* | Remove the final bits of Attributes being declared in the Attribute | Bill Wendling | 2012-10-10 | 1 | -3/+14 | |
| | | | | | | | namespace. Use the attribute's enum value instead. No functionality change intended. llvm-svn: 165610 | |||||
* | Use the attribute enums to query if a function has an attribute. | Bill Wendling | 2012-10-09 | 1 | -92/+6 | |
| | | | | llvm-svn: 165551 | |||||
* | Use the attribute enums to query if a parameter has an attribute. | Bill Wendling | 2012-10-09 | 1 | -118/+6 | |
| | | | | llvm-svn: 165550 | |||||
* | Revert r165547 to fix build. | Bill Wendling | 2012-10-09 | 1 | -4/+10 | |
| | | | | llvm-svn: 165548 | |||||
* | Use a single location for calculating the alignments. | Bill Wendling | 2012-10-09 | 1 | -10/+4 | |
| | | | | llvm-svn: 165547 | |||||
* | Use appropriate method calls to get the alignment value. | Bill Wendling | 2012-10-09 | 1 | -4/+5 | |
| | | | | llvm-svn: 165541 | |||||
* | Inline the checks for mutually exclusive attributes since they're used in ↵ | Bill Wendling | 2012-10-09 | 1 | -12/+56 | |
| | | | | | | only one module. llvm-svn: 165539 | |||||
* | Move the 'FunctionOnly' attributes thingy inside of the Attributes class. | Bill Wendling | 2012-10-09 | 2 | -21/+25 | |
| | | | | llvm-svn: 165530 | |||||
* | Add in the first step of the multiple pointer support. This adds in support ↵ | Micah Villmow | 2012-10-09 | 1 | -25/+95 | |
| | | | | | | | | to the data layout for specifying a per address space pointer size. The next step is to update the optimizers to allow them to optimize the different address spaces with this information. llvm-svn: 165505 | |||||
* | Move the 'ParameterOnly' variable inside of the Attributes class and make it ↵ | Bill Wendling | 2012-10-09 | 1 | -15/+12 | |
| | | | | | | a method. llvm-svn: 165497 | |||||
* | Remove the now dead VarArgsIncompatible variable. | Bill Wendling | 2012-10-09 | 1 | -3/+2 | |
| | | | | llvm-svn: 165496 | |||||
* | Use the enum value of the attributes when removing them from the attributes ↵ | Bill Wendling | 2012-10-09 | 1 | -83/+0 | |
| | | | | | | builder. llvm-svn: 165495 | |||||
* | Use the enum value of the attributes when adding them to the attributes builder. | Bill Wendling | 2012-10-09 | 1 | -86/+18 | |
| | | | | llvm-svn: 165494 | |||||
* | Fix PR14016. | Alexey Samsonov | 2012-10-09 | 1 | -0/+10 | |
| | | | | | | | | | | DeadArgumentElimination pass can replace one LLVM function with another, invalidating a pointer stored in debug info metadata entry for this function. To fix this, we collect debug info descriptors for functions before running a DeadArgumentElimination pass and "patch" pointers in metadata nodes if we replace a function. llvm-svn: 165490 | |||||
* | Create enums for the different attributes. | Bill Wendling | 2012-10-09 | 4 | -178/+143 | |
| | | | | | | | We use the enums to query whether an Attributes object has that attribute. The opaque layer is responsible for knowing where that specific attribute is stored. llvm-svn: 165488 | |||||
* | Remove some dead methods. | Bill Wendling | 2012-10-09 | 1 | -16/+0 | |
| | | | | llvm-svn: 165485 | |||||
* | Remove more uses of the attribute enums by supplying appropriate query ↵ | Bill Wendling | 2012-10-09 | 1 | -0/+100 | |
| | | | | | | | | methods for them. No functionality change intended. llvm-svn: 165466 |