aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/CppBackend/CPPBackend.cpp
AgeCommit message (Collapse)Author
2013-11-23fix getPtrAlon Zakai
2013-11-23more binary opsAlon Zakai
2013-11-23handle int/float bitcastsAlon Zakai
2013-11-23use signedness in icmpAlon Zakai
2013-11-23clean up brAlon Zakai
2013-11-23logical and float mathopsAlon Zakai
2013-11-23clean up div/remAlon Zakai
2013-11-23fix sext and refactorAlon Zakai
2013-11-23<32 bit int castsAlon Zakai
2013-11-23fix parens in sdiv/sremAlon Zakai
2013-11-23correct sign in sdiv, sremAlon Zakai
2013-11-23fix phi constantsAlon Zakai
2013-11-23handle dependencies and cycles in phisAlon Zakai
2013-11-23split out cast and non-cast versions of getValueAsStrAlon Zakai
2013-11-22align stack to 8 bytesAlon Zakai
2013-11-22sextAlon Zakai
2013-11-22truncAlon Zakai
2013-11-22support 8-bit constantsAlon Zakai
2013-11-22ir debugger helperAlon Zakai
2013-11-22make assert show something even in release buildsAlon Zakai
2013-11-22fix relooper branch directionsAlon Zakai
2013-11-22set asm mode in relooper and add label varAlon Zakai
2013-11-22Math.imulAlon Zakai
2013-11-22native phi pushingAlon Zakai
2013-11-22preparation for phi pushingAlon Zakai
2013-11-22update relooper and fix indentation and empty linesAlon Zakai
2013-11-22more mathopsAlon Zakai
2013-11-22fix getOpName - we have no problem with forward refsAlon Zakai
2013-11-22more debug infoAlon Zakai
2013-11-22note each instruction in a debug messageAlon Zakai
2013-11-22fail on invalid getOpName valuesAlon Zakai
2013-11-22improve pre-relooper branch parsingAlon Zakai
2013-11-22remove phi printing code, in preparation for pushing them back into branchesAlon Zakai
2013-11-21fix mathop return typeAlon Zakai
2013-11-21fix sitofp return typeAlon Zakai
2013-11-21fix sitofp castAlon Zakai
2013-11-21merge in CppBackend workAlon Zakai
2013-03-25Remove assert. There may be target-dependent attributes left.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177878 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-27Convert the CPP backend to use the AttributeSet instead of AttributeWithIndex.Bill Wendling
Further removal of the introspective AttributeWithIndex thing. Also fix the #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173599 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25Remove some introspection functions.Bill Wendling
The 'getSlot' function and its ilk allow introspection into the AttributeSet class. However, that class should be opaque. Allow access through accessor methods instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173522 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-25Use the new 'getSlotIndex' method to retrieve the attribute's slot index.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173499 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-23Add the IR attribute 'sspstrong'.Bill Wendling
SSPStrong applies a heuristic to insert stack protectors in these situations: * A Protector is required for functions which contain an array, regardless of type or length. * A Protector is required for functions which contain a structure/union which contains an array, regardless of type or length. Note, there is no limit to the depth of nesting. * A protector is required when the address of a local variable (i.e., stack based variable) is exposed. (E.g., such as through a local whose address is taken as part of the RHS of an assignment or a local whose address is taken as part of a function argument.) This patch implements the SSPString attribute to be equivalent to SSPRequired. This will change in a subsequent patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173230 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-02Move all of the header files which are involved in modelling the LLVM IRChandler Carruth
into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-30s/hasAttribute/contains/g to be more consistent with other method names.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171252 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19Rename the 'Attributes' class to 'Attribute'. It's going to represent a ↵Bill Wendling
single attribute in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170502 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-07s/AttrListPtr/AttributeSet/g to better label what this class is going to be ↵Bill Wendling
in the near future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169651 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-03Use the new script to sort the includes of every file under lib.Chandler Carruth
Sooooo many of these had incorrect or strange main module includes. I have manually inspected all of these, and fixed the main module include to be the nearest plausible thing I could find. If you own or care about any of these source files, I encourage you to take some time and check that these edits were sensible. I can't have broken anything (I strictly added headers, and reordered them, never removed), but they may not be the headers you'd really like to identify as containing the API being implemented. Many forward declarations and missing includes were added to a header files to allow them to parse cleanly when included first. The main module rule does in fact have its merits. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27Remove the dependent libraries feature.Bill Wendling
The dependent libraries feature was never used and has bit-rotted. Remove it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168694 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-23Update call to the new syntax.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168512 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-30Change ForceSizeOpt attribute into MinSize attributeQuentin Colombet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167020 91177308-0d34-0410-b5e6-96231b3b80d8