summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix TR 18037 citation in SemaType.cppPeter Collingbourne2011-07-271-2/+2
| | | | llvm-svn: 136256
* Refactor the STRT and STRBT instructions to distinguish between the ↵Owen Anderson2011-07-272-2/+31
| | | | | | register-addend and immediate-addend versions. Temporarily XFAIL the asm parsing tests for these instructions. llvm-svn: 136255
* CodeGen: rename CodeGenModule::Runtime to ObjCRuntimePeter Collingbourne2011-07-273-14/+14
| | | | llvm-svn: 136254
* Merge the contents from exception-handling-rewrite to the mainline.Bill Wendling2011-07-2727-106/+742
| | | | | | This adds the new instructions 'landingpad' and 'resume'. llvm-svn: 136253
* ARM assembly parsing and encoding for extend instructions.Jim Grosbach2011-07-274-0/+229
| | | | | | | Assembly parser handling for extend instruction rotate operands. Add tests for the sign extend instructions. llvm-svn: 136252
* Fix typo in test.Eli Friedman2011-07-271-1/+1
| | | | llvm-svn: 136251
* Teach the ConstantMerge pass about alignment. Fixes PR10514!Nick Lewycky2011-07-272-10/+56
| | | | llvm-svn: 136250
* X86ISD::MEMBARRIER does not require SSE2; it doesn't actually generate any ↵Eli Friedman2011-07-271-1/+1
| | | | | | code, and all x86 processors will honor the required semantics. llvm-svn: 136249
* Fix PR10509: http://llvm.org/bugs/show_bug.cgi?id=10509Howard Hinnant2011-07-271-3/+6
| | | | llvm-svn: 136247
* make the C++stdlib string summary work even if for some reason ↵Enrico Granata2011-07-271-1/+1
| | | | | | std::basic_string<char> ends up in the debug info instead of std::string llvm-svn: 136246
* The numbering of LLVMOpcode is supposed to be stable; revert my earlier ↵Eli Friedman2011-07-271-24/+26
| | | | | | change, and append Fence onto the end. llvm-svn: 136245
* Add test cases for BlockFrequency.Jakub Staszak2011-07-271-0/+56
| | | | llvm-svn: 136244
* Make CodeGen for array delete involving incomplete class work without ↵Eli Friedman2011-07-273-22/+11
| | | | | | crashing. Should fix regression on g++.dg/init/delete1.C. llvm-svn: 136241
* Change Preprocessor::getTotalMemory() to use llvm::capacity_in_bytes().Ted Kremenek2011-07-271-5/+6
| | | | llvm-svn: 136239
* Change PreprocessingRecord::getTotalMemory() to use llvm::capacity_in_bytes().Ted Kremenek2011-07-271-3/+4
| | | | llvm-svn: 136238
* Change HeaderSearch::getTotalMemory() to use llvm::capacity_in_bytes().Ted Kremenek2011-07-271-2/+3
| | | | llvm-svn: 136237
* Change SourceManager::getDataStructureSizes() to use llvm::capacity_in_bytes().Ted Kremenek2011-07-271-7/+8
| | | | llvm-svn: 136236
* Change ASTContext::getSideTableAllocatedMemory() to use ↵Ted Kremenek2011-07-271-12/+14
| | | | | | llvm::capacity_in_bytes(). llvm-svn: 136235
* Add a generic 'capacity_in_bytes' function to allow inspection of memory ↵Ted Kremenek2011-07-273-6/+47
| | | | | | usage of various data structures. llvm-svn: 136233
* Fix PR10510: http://llvm.org/bugs/show_bug.cgi?id=10510Howard Hinnant2011-07-271-0/+4
| | | | llvm-svn: 136232
* Add docstrings and cross refs to SBCompileUnit and SBLineEntry.Johnny Chen2011-07-272-3/+33
| | | | llvm-svn: 136230
* ARM assembly parsing aliases for extend instructions w/o rotate.Jim Grosbach2011-07-271-0/+22
| | | | llvm-svn: 136229
* Update document listing DIVariable elements to reflect recent changes.Devang Patel2011-07-271-1/+3
| | | | llvm-svn: 136228
* Add cross reference to SBThread from the SBFrame docstring. Also add a ↵Johnny Chen2011-07-271-1/+7
| | | | | | simple iteration example. llvm-svn: 136227
* ARM cleanup of remaining extend instructions.Jim Grosbach2011-07-272-171/+122
| | | | | | | | Refactor the rest of the extend instructions to not artificially distinguish between a rotate of zero and a rotate of any other value. Replace the by-zero versions with Pat<>'s for ISel. llvm-svn: 136226
* ARM extend instructions simplification.Jim Grosbach2011-07-275-89/+87
| | | | | | | | Refactor the SXTB, SXTH, SXTB16, UXTB, UXTH, and UXTB16 instructions to not have an 'r' and an 'r_rot' version, but just a single version with a rotate that can be zero. Use plain Pat<>'s for the ISel of the non-rotated version. llvm-svn: 136225
* Modules don't require validation of the predefines bufferDouglas Gregor2011-07-271-1/+6
| | | | llvm-svn: 136224
* Make this darwin only for now while investigating to clear up x86_64Eric Christopher2011-07-271-1/+1
| | | | | | Release+Asserts linux tests. llvm-svn: 136223
* Optimize 96-bit division a little bit.Jakub Staszak2011-07-271-2/+3
| | | | llvm-svn: 136222
* Move static methods to the anonymous namespace.Jakub Staszak2011-07-272-5/+7
| | | | llvm-svn: 136221
* Edge to itself is backedge as well.Jakub Staszak2011-07-271-1/+1
| | | | llvm-svn: 136219
* Trim includes.Frits van Bommel2011-07-271-12/+11
| | | | llvm-svn: 136218
* Update C++0x status page to reflect support for unicode string and character ↵Douglas Gregor2011-07-271-4/+4
| | | | | | literals, from Craig Topper llvm-svn: 136216
* Update CMake build for new gtest file.Frits van Bommel2011-07-271-0/+1
| | | | llvm-svn: 136215
* Remove some code that is no longer needed now that googletest knows howJay Foad2011-07-271-17/+0
| | | | | | to print STL containers. llvm-svn: 136213
* Merge gtest-1.6.0.Jay Foad2011-07-2728-1356/+3498
| | | | llvm-svn: 136212
* Explicitly cast narrowing conversions inside {}s that will become errors inJeffrey Yasskin2011-07-276-6/+8
| | | | | | C++0x. llvm-svn: 136211
* Add support for C++0x unicode string and character literals, from Craig Topper!Douglas Gregor2011-07-2746-246/+608
| | | | llvm-svn: 136210
* [arcmt] Revert r135382, there's a different approach in r135764. rdar://9821111.Argyrios Kyrtzidis2011-07-273-99/+0
| | | | llvm-svn: 136209
* [arcmt] More automatic transformations and safety improvements; rdar://9615812 :Argyrios Kyrtzidis2011-07-2721-28/+367
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Replace calling -zone with 'nil'. -zone is obsolete in ARC. - Allow removing retain/release on a static global var. - Fix assertion hit when scanning for name references outside a NSAutoreleasePool scope. - Automatically add bridged casts for results of objc method calls and when calling CFRetain, for example: NSString *s; CFStringRef ref = [s string]; -> CFStringRef ref = (__bridge CFStringRef)([s string]); ref = s.string; -> ref = (__bridge CFStringRef)(s.string); ref = [NSString new]; -> ref = (__bridge_retained CFStringRef)([NSString new]); ref = [s newString]; -> ref = (__bridge_retained CFStringRef)([s newString]); ref = [[NSString alloc] init]; -> ref = (__bridge_retained CFStringRef)([[NSString alloc] init]); ref = [[s string] retain]; -> ref = (__bridge_retained CFStringRef)([s string]); ref = CFRetain(s); -> ref = (__bridge_retained CFTypeRef)(s); ref = [s retain]; -> ref = (__bridge_retained CFStringRef)(s); - Emit migrator error when trying to cast to CF type the result of autorelease/release: for CFStringRef f3() { return (CFStringRef)[[[NSString alloc] init] autorelease]; } emits: t.m:12:10: error: [rewriter] it is not safe to cast to 'CFStringRef' the result of 'autorelease' message; a __bridge cast may result in a pointer to a destroyed object and a __bridge_retained may leak the object return (CFStringRef)[[[NSString alloc] init] autorelease]; ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ t.m:12:3: note: [rewriter] remove the cast and change return type of function to 'NSString *' to have the object automatically autoreleased return (CFStringRef)[[[NSString alloc] init] autorelease]; ^ - Before changing attributes to weak/unsafe_unretained, check if the backing ivar is set to a +1 object, in which case use 'strong' instead. llvm-svn: 136208
* Easier debugging with Visual Studio Visualizers, from Nikola Smiljanic!Douglas Gregor2011-07-272-0/+66
| | | | llvm-svn: 136207
* Revert r136156, which broke several buildbots.Dan Gohman2011-07-271-1/+14
| | | | llvm-svn: 136206
* Misc mid-level changes for new 'fence' instruction.Eli Friedman2011-07-275-5/+41
| | | | llvm-svn: 136205
* Clean up the analysis of the collection operand to ObjCJohn McCall2011-07-279-41/+252
| | | | | | | | | | | for-in statements; specifically, make sure to close over any temporaries or cleanups it might require. In ARC, this has implications for the lifetime of the collection, so emit it with a retain and release it upon exit from the loop. rdar://problem/9817306 llvm-svn: 136204
* In Microsoft mode, if we are within a templated function and we can't ↵Francois Pichet2011-07-272-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | resolve Identifier during BuildCXXNestedNameSpecifier, then extend the SS with Identifier. This will have the effect of resolving Identifier during template instantiation. The goal is to be able to resolve a function call whose nested-name-specifier is located inside a dependent base class. class C { public: static void foo2() { } }; template <class T> class A { public: typedef C D; }; template <class T> class B : public A<T> { public: void foo() { D::foo2(); } }; Note that this won't work if the NestedNameSpecifier refers to a type. This fixes 1 error when parsing the MSVC 2010 standard headers file with clang. llvm-svn: 136203
* Minor simplification.Eli Friedman2011-07-271-2/+2
| | | | llvm-svn: 136202
* Move some code around to open opportunity for more shuffle matchingBruno Cardoso Lopes2011-07-271-18/+18
| | | | llvm-svn: 136201
* The vpermilps and vpermilpd have different behaviour regarding theBruno Cardoso Lopes2011-07-275-32/+156
| | | | | | | | | usage of the shuffle bitmask. Both work in 128-bit lanes without crossing, but in the former the mask of the high part is the same used by the low part while in the later both lanes have independent masks. Handle this properly and and add support for vpermilpd. llvm-svn: 136200
* Remove more dead code!Bruno Cardoso Lopes2011-07-271-15/+5
| | | | llvm-svn: 136199
* Fix AliasSetTracker so that it doesn't make any assumptions about ↵Eli Friedman2011-07-273-70/+68
| | | | | | instructions it doesn't know about (like the atomic instructions I'm adding). llvm-svn: 136198
OpenPOWER on IntegriCloud