summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Use packed instead of scalar itineraries for SSE1/2 SQRTPS/PD, RCPPS, and ↵Craig Topper2012-12-311-6/+6
| | | | | | RSQRTPS. VEX-encoded forms already use packed. llvm-svn: 171336
* Make it explicit that the only entry points to the Program object areChandler Carruth2012-12-311-1/+1
| | | | | | | | | | | through the static helper functions. This is already true throughout the codebase. Slowly, I'm going to re-implement these static helpers in terms of a new process based interface which can expose more information, and remove the program object entirely. llvm-svn: 171335
* Remove an unused method on Program.Chandler Carruth2012-12-313-46/+0
| | | | | | | I'm simplifying this interface as much as I can before merging it with the new process interface. llvm-svn: 171334
* Remove an unused method on the Program class.Chandler Carruth2012-12-313-13/+0
| | | | llvm-svn: 171332
* Go ahead and get rid of the old page size interface and convert all theChandler Carruth2012-12-316-26/+12
| | | | | | | users over to the new one. No sense maintaining this "compatibility" layer it seems. llvm-svn: 171331
* Flesh out a page size accessor in the new API.Chandler Carruth2012-12-315-12/+43
| | | | | | | | Implement the old API in terms of the new one. This simplifies the implementation on Windows which can now re-use the self_process's once initialization. llvm-svn: 171330
* Silence some warnings and allow passing down some feature flags to the linker.Rafael Espindola2012-12-312-0/+30
| | | | | | Patch by Brad Smith. llvm-svn: 171329
* Remove the declspecs from small alignments that we can force withChandler Carruth2012-12-311-5/+12
| | | | | | | | | | | | a union. These don't actually work for by-value function arguments, and MSVC warns if they exist even while (we hope) it aligns the argument correctly due to the other union member. This means MSVC will miss out on optimizations based on the alignment of the buffer, but really, there aren't that many for x86 and MSVC is likely not doing a great job of optimizing LLVM and Clang anyways. llvm-svn: 171328
* Remove an unused function in the old Process interface.Chandler Carruth2012-12-313-35/+0
| | | | llvm-svn: 171327
* reimplement GetPointerBaseWithConstantOffset().Nuno Lopes2012-12-311-31/+21
| | | | | | | The new code is an improved copy of the code I deleted from Analysis/Loads.cpp. One less compute-constant-gep-offset implementation. yay :) llvm-svn: 171326
* recommit r171298 (add support for PHI nodes to ObjectSizeOffsetVisitor). ↵Nuno Lopes2012-12-313-12/+155
| | | | | | Hopefully with bugs corrected now. llvm-svn: 171325
* Klaas de Vries: Fix bug in libc++'s std::string::find_first_not_of.Howard Hinnant2012-12-312-1/+3
| | | | llvm-svn: 171321
* [AlignOf] Add AlignedCharArray and refactor AlignedCharArrayUnion.Michael J. Spencer2012-12-312-74/+107
| | | | | | | This adds AlignedCharArray<Alignment, Size>. A templated struct that contains a member named buffer of type char[Size] that is aligned to Alignment. llvm-svn: 171319
* Revert "add support for PHI nodes to ObjectSizeOffsetVisitor"Benjamin Kramer2012-12-312-68/+3
| | | | | | This reverts r171298. Breaks clang selfhost. llvm-svn: 171318
* [CMake] Fix c++ abi library configuration on Linux.Michael J. Spencer2012-12-313-5/+69
| | | | | | | | | | You can now configure from the command line using: -DLIBCXX_CXX_ABI=libsupc++ -DLIBCXX_LIBSUPCXX_INCLUDE_PATHS="path;path Also documents how to build on Linux. llvm-svn: 171316
* Add extra CHECK to make sure that 'or' instruction was replaced.Jakub Staszak2012-12-312-0/+3
| | | | | | Also add an assert to avoid confusion in the code where is known that C1 <= C2. llvm-svn: 171310
* Fix bits check in ELFObjectFile::isSectionZeroInit().Rafael Espindola2012-12-312-5/+2
| | | | | | | | Fixes PR14723. Patch by Sami Liedes! llvm-svn: 171309
* revert r171306, since we cannot compare APInts with different bitwidthsNuno Lopes2012-12-311-1/+1
| | | | llvm-svn: 171308
* use ValueTracking's GetPointerBaseWithConstantOffset() function instead of a ↵Nuno Lopes2012-12-311-36/+8
| | | | | | local implementation llvm-svn: 171307
* minor code simplificationNuno Lopes2012-12-311-1/+1
| | | | llvm-svn: 171306
* Use the generic dump template. Extracted from a patch by Sami Liedes.Rafael Espindola2012-12-311-53/+19
| | | | llvm-svn: 171305
* Dump sections. Extracted from a patch by Sami Liedes.Rafael Espindola2012-12-312-0/+94
| | | | llvm-svn: 171304
* add support for GlobalAlias to ObjectSizeOffsetVisitorNuno Lopes2012-12-312-0/+10
| | | | llvm-svn: 171303
* Print a header above the symbols. Extracted from a patch by Sami Liedes.Rafael Espindola2012-12-312-0/+14
| | | | llvm-svn: 171302
* Check for errors. Extracted from a patch by Sami Liedes.Rafael Espindola2012-12-311-6/+12
| | | | llvm-svn: 171301
* Fix indentation. Extracted from a patch by Sami Liedes!Rafael Espindola2012-12-311-32/+32
| | | | llvm-svn: 171300
* Style fixes in llvm-readobj.cpp. Extracted from a patch by Sami Liedes!Rafael Espindola2012-12-311-28/+18
| | | | llvm-svn: 171299
* add support for PHI nodes to ObjectSizeOffsetVisitorNuno Lopes2012-12-312-3/+68
| | | | llvm-svn: 171298
* Remove dead method.Bill Wendling2012-12-311-6/+0
| | | | llvm-svn: 171295
* Add some comparison operators to compare the Attribute object with the ↵Bill Wendling2012-12-312-3/+15
| | | | | | AttrKind value. llvm-svn: 171294
* docs: Fix FIXMESean Silva2012-12-312-4/+5
| | | | | | | I actually made a think-o when writing this FIXME since I wrote LangRef but it should actually have said WritingAnLLVMBackend. llvm-svn: 171293
* Switch this code to a more idiomatic double using namespace directive.Chandler Carruth2012-12-313-6/+3
| | | | | | | | Fix a truly odd namespace qualifier that was flat out wrong in the process. The fully qualified namespace would have been llvm::sys::TimeValue, llvm::TimeValue makes no sense. llvm-svn: 171292
* Delete a cut/paste-o from r171290. Very sorry about the noise.Chandler Carruth2012-12-311-1/+0
| | | | llvm-svn: 171291
* Suppress a MSVC warning complaining about the code working as intended.Chandler Carruth2012-12-311-0/+13
| | | | llvm-svn: 171290
* Begin sketching out the process interface.Chandler Carruth2012-12-316-1/+130
| | | | | | | | | | | | | | | | | | | | | | | The coding style used here is not LLVM's style because this is modeled after a Boost interface and thus done in the style of a candidate C++ standard library interface. I'll probably end up proposing it as a standard C++ library if it proves to be reasonably portable and useful. This is just the most basic parts of the interface -- getting the process ID out of it. However, it helps sketch out some of the boiler plate such as the base class, derived class, shared code, and static factory function. It also introduces a unittest so that I can incrementally ensure this stuff works. However, I've not even compiled this code for Windows yet. I'll try to fix any Windows fallout from the bots, and if I can't fix it I'll revert and get someone on Windows to help out. There isn't a lot more that is mandatory, so soon I'll switch to just stubbing out the Windows side and get Michael Spencer to help with implementation as he can test it directly. llvm-svn: 171289
* Start sketching out a roadmap for better subprocess management in theChandler Carruth2012-12-311-136/+140
| | | | | | | | | | | | | | | | | | | | | LLVM libraries. Also, clean up the doxygen and formatting of the existing interfaces. With this change I'm calling the existing interface "legacy" because I'd like to replace it with something much better. My end goal is to expose a common set of interfaces for inspecting various properties of a process, and implementations to expose those both for the current process and for child processes. This will also expose more rich interfaces for spawning and controling a subprocess, notably to use system calls like wait3 and wait4 where available and gather detailed resource usage stats about the subprocess. My plan (discussed with Michael Spencer on IRC) is to base this loosely around the proposed Boost.Process interface, but to implement a relatively small subset of that functionality based around the needs of LLVM, Clang, the Clang driver, etc. llvm-svn: 171285
* Fix LICM's memory promotion optimization to preserve TBAA tags whenChris Lattner2012-12-312-8/+58
| | | | | | | promoting a store in a loop. This was noticed when working on PR14753, but isn't directly related. llvm-svn: 171281
* teach instcombine to preserve TBAA tag when merging two stores, part ofChris Lattner2012-12-312-0/+41
| | | | | | PR14753 llvm-svn: 171279
* [ubsan] Don't suggest casting to unsigned for unsigned unary minus overflow.Will Dietz2012-12-312-6/+16
| | | | | | Fixed version of r171273. llvm-svn: 171278
* Revert r171273 which doesn't actually compile.Chandler Carruth2012-12-312-16/+6
| | | | | | | Original commit message: [ubsan] Don't suggest casting to unsigned for unsigned unary minus overflow. llvm-svn: 171277
* Don't mark variadic functions as always inline -- they cannot in fact beChandler Carruth2012-12-311-4/+4
| | | | | | | | inlined. Patch by Saleem Abdulrasool, reviewed by Michael Spencer and Richard Smith. llvm-svn: 171276
* Add a simple .arcconfig to make using the 'arc' commandline tool and theChandler Carruth2012-12-311-0/+4
| | | | | | phabricator code review site easier with libc++. llvm-svn: 171275
* Fix minor copy-pasto. No functionality change.Nico Weber2012-12-311-1/+1
| | | | llvm-svn: 171274
* [ubsan] Don't suggest casting to unsigned for unsigned unary minus overflow.Will Dietz2012-12-312-6/+16
| | | | llvm-svn: 171273
* Grammo.Jakub Staszak2012-12-311-1/+1
| | | | llvm-svn: 171272
* Remove the getAttributesAtIndex and getNumAttrs methods in favor of using ↵Bill Wendling2012-12-315-32/+9
| | | | | | the getAttrSomewhere predicate. This prevents the uses of 'Attribute' as a collection of attributes. llvm-svn: 171271
* Transform (A == C1 || A == C2) into (A & ~(C1 ^ C2)) == C1Jakub Staszak2012-12-312-0/+23
| | | | | | | if C1 and C2 differ only with one bit. Fixes PR14708. llvm-svn: 171270
* Remove some remnants of OwningExprResult / OwningStmtResult.Nico Weber2012-12-312-29/+17
| | | | | | | These got deleted late 2010 during the Actions/Sema unification. No functionality change. llvm-svn: 171269
* Simplify. No functionality change.Nico Weber2012-12-301-7/+2
| | | | llvm-svn: 171268
* Don't warn on unused member functions that are extern because of a typedef.Rafael Espindola2012-12-302-0/+17
| | | | llvm-svn: 171267
OpenPOWER on IntegriCloud