summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Try to get useful diagnostics out of the failing MSVC buildersDouglas Gregor2012-01-291-2/+2
| | | | llvm-svn: 149212
* Cleanup the organization of some methods in llvm::Triple and provideChandler Carruth2012-01-291-15/+19
| | | | | | a better doxyment group for convenience predicates. llvm-svn: 149211
* Alternate fix to the modules failures that doesn't require us to tweak tgmath.hDouglas Gregor2012-01-292-3/+1
| | | | llvm-svn: 149210
* If there's no math.h, then tgmath.h should just be emptyDouglas Gregor2012-01-292-3/+4
| | | | llvm-svn: 149209
* Temporary disable the -verify on this test in the hope of getting some ↵Douglas Gregor2012-01-291-2/+3
| | | | | | useful output from the buildbots llvm-svn: 149208
* Switching back to using std::tr1::shared_ptr. We originally switched awayGreg Clayton2012-01-2994-416/+409
| | | | | | | | | | | | | | | | | | | | | | | | | | due to RTTI worries since llvm and clang don't use RTTI, but I was able to switch back with no issues as far as I can tell. Once the RTTI issue wasn't an issue, we were looking for a way to properly track weak pointers to objects to solve some of the threading issues we have been running into which naturally led us back to std::tr1::weak_ptr. We also wanted the ability to make a shared pointer from just a pointer, which is also easily solved using the std::tr1::enable_shared_from_this class. The main reason for this move back is so we can start properly having weak references to objects. Currently a lldb_private::Thread class has a refrence to its parent lldb_private::Process. This doesn't work well when we now hand out a SBThread object that contains a shared pointer to a lldb_private::Thread as this SBThread can be held onto by external clients and if they end up using one of these objects we can easily crash. So the next task is to start adopting std::tr1::weak_ptr where ever it makes sense which we can do with lldb_private::Debugger, lldb_private::Target, lldb_private::Process, lldb_private::Thread, lldb_private::StackFrame, and many more objects now that they are no longer using intrusive ref counted pointer objects (you can't do std::tr1::weak_ptr functionality with intrusive pointers). llvm-svn: 149207
* Introduce a module map for (some of) the compiler-suppliedDouglas Gregor2012-01-294-2/+64
| | | | | | | | headers. The remaining headers require more sophisticated requirements; they'll be handled separately. Part of <rdar://problem/10710060>. llvm-svn: 149206
* revert r149184Fariborz Jahanian2012-01-294-109/+64
| | | | llvm-svn: 149205
* Switch over to LLVM's file-level locking facilityDouglas Gregor2012-01-291-265/+5
| | | | llvm-svn: 149204
* Move Clang's file-level locking facility over to LLVM's supportDouglas Gregor2012-01-293-0/+291
| | | | | | library, since it doesn't really have anything to do with Clang. llvm-svn: 149203
* Update line numbers. SighDouglas Gregor2012-01-291-1/+1
| | | | llvm-svn: 149202
* Also require a proper shellDouglas Gregor2012-01-291-0/+1
| | | | llvm-svn: 149201
* Ensure that we clean up after a failed module build and cope with theDouglas Gregor2012-01-295-1/+32
| | | | | | results in libclang. llvm-svn: 149200
* Implement code completion support for module import declarations, e.g.,Douglas Gregor2012-01-2915-3/+157
| | | | | | | | | | | | @import <complete with module names here> or @import std.<complete with submodule names here> Addresses <rdar://problem/10710117>. llvm-svn: 149199
* Rework HeaderSearch's interface for getting a module from a name andDouglas Gregor2012-01-295-127/+126
| | | | | | | | | for getting the name of the module file, unifying the code for searching for a module with a given name (into lookupModule()) and separating out the mapping to a module file (into getModuleFileName()). No functionality change. llvm-svn: 149197
* Test module lookup within a subdirectory of a normal include directory.Douglas Gregor2012-01-293-3/+10
| | | | llvm-svn: 149196
* Cleanups for EABI standard functionsAnton Korobeynikov2012-01-291-2/+7
| | | | llvm-svn: 149195
* Use base AAPCS for varargs functions even for AAPCS-VFP CCAnton Korobeynikov2012-01-291-1/+3
| | | | llvm-svn: 149194
* When emitting an ARC epilogue that looks like a return of 'self',John McCall2012-01-292-0/+67
| | | | | | | | kill the retain from the return site. This has the workaround nature. It's badness all around. llvm-svn: 149193
* Removed an incorrectly added property from SBTarget.iGreg Clayton2012-01-291-3/+0
| | | | llvm-svn: 149192
* Added the ability to get the target triple, byte order and address byte sizeGreg Clayton2012-01-2922-0/+546
| | | | | | | from the SBTarget and SBModule interfaces. Also added many python properties for easier access to many things from many SB objects. llvm-svn: 149191
* Get a little bit smarter about killing off the ReturnValue allocaJohn McCall2012-01-293-48/+62
| | | | | | | in the presence of straight-line cleanups. This is a simple but important case, particularly for ARC. llvm-svn: 149190
* Fix some scavenger performance issues.Jakob Stoklund Olesen2012-01-292-24/+13
| | | | | | | | | | | | | - Don't call malloc+free in the very hot forward(). - Don't call isTiedToDefOperand(). - Don't create BitVector temporaries. - Merge DeadRegs into KillRegs. - Eliminate the early clobber checks, they were irrelevant to scavenging. - Remove unnecessary code from -Asserts builds. This speeds up ARM PEI by 3.4x and overall llc -O0 codegen time by 11%. llvm-svn: 149189
* Avoid creating BitVector temporaries.Jakob Stoklund Olesen2012-01-291-7/+7
| | | | llvm-svn: 149188
* Add a BitVector::reset(BitVector&) method.Jakob Stoklund Olesen2012-01-291-0/+10
| | | | | | | The alternative LHS &= ~RHS is way too slow because it creates a temporary that calls malloc/free. llvm-svn: 149187
* Complain about attempts to use 'protected' visibility on targetsJohn McCall2012-01-297-5/+44
| | | | | | | | like Darwin that don't support it. We should also complain about invalid -fvisibility=protected, but that information doesn't seem to exist at the most appropriate time, so I've left a FIXME behind. llvm-svn: 149186
* Fix typo.Nick Lewycky2012-01-281-2/+2
| | | | llvm-svn: 149185
* objc-arc: Perform null check on receiver before sending methods whichFariborz Jahanian2012-01-284-64/+109
| | | | | | | | consume one or more of their arguments. If not done, this will cause a leak as method will not consume the argument when receiver is null. // rdar://10444474 llvm-svn: 149184
* Make the __builtin_c[lt]zs builtins target independent.Benjamin Kramer2012-01-285-47/+37
| | | | | | | | | There is really no reason to have these only available on x86. It's just __builtin_c[tl]z for shorts. Modernize the test while at it. llvm-svn: 149183
* Add a note about a potential optimization for clz/ctz patterns for ARMBob Wilson2012-01-281-0/+16
| | | | | | (and other targets). llvm-svn: 149182
* Use defined-at-zero behavior for CLZ/CTZ builtins on PowerPC.Bob Wilson2012-01-281-0/+2
| | | | llvm-svn: 149181
* Ensure .AliasedSymbol() is called on all uses of getSymbol(). Affects ARM ↵James Molloy2012-01-284-2/+14
| | | | | | | | and MIPS ELF backends. Fixes PR11877 llvm-svn: 149180
* Silence GCC's -Wreturn-type warning.Benjamin Kramer2012-01-281-0/+3
| | | | llvm-svn: 149179
* StaticAnalyzer: Move ObjC- and CXX-specific methods out of line so checkers ↵Benjamin Kramer2012-01-2815-22/+59
| | | | | | that don't care about the language don't have to pull in all the headers. llvm-svn: 149178
* Added tests for template keyword presence.Abramo Bagnara2012-01-281-0/+119
| | | | llvm-svn: 149177
* Small improvement to the recursion detection logic from the previous commit.Rafael Espindola2012-01-282-1/+7
| | | | llvm-svn: 149175
* Handle recursive variable definitions directly. This gives us better errorRafael Espindola2012-01-283-12/+28
| | | | | | messages and allows us to fix PR11865. llvm-svn: 149174
* DiagnosticsEngine::setMappingToAllDiagnostics() does not need to return bool,Argyrios Kyrtzidis2012-01-282-4/+2
| | | | | | caught by Chad. llvm-svn: 149173
* [asan] correctly use ConstantExpr::getGetElementPtr. Catch by NAKAMURA TakumiKostya Serebryany2012-01-281-1/+1
| | | | llvm-svn: 149172
* Fix shell commands that do code signing.Jason Molenda2012-01-282-2/+2
| | | | llvm-svn: 149171
* Bumping Xcode project versions for lldb-109 and debugserver-167.Greg Clayton2012-01-283-22/+22
| | | | llvm-svn: 149168
* Added logging so we can see the field names and offsets of any structures Greg Clayton2012-01-281-2/+12
| | | | | | for when we enable the assisted layout. llvm-svn: 149167
* Stop running so many individual commands when going into the script interpreter.Greg Clayton2012-01-281-48/+20
| | | | | | | | | | All of the commands now get globbed into a single line. lldb.target, lldb.process, lldb.thread and lldb.frame now get initialized with empty SBTarget, SBProcess, SBThread and SBFrame objects when they don't contain anything. llvm-svn: 149166
* Xcode codesigning is broken. Work around this by doing code signing in a ↵Greg Clayton2012-01-282-10/+30
| | | | | | shell script build phase. llvm-svn: 149165
* Reapply r149159 with a fix to add to a PHI node with a non-null parent.Bill Wendling2012-01-281-34/+64
| | | | llvm-svn: 149164
* Remove code that adds live ranges for dead defs. It seems to be breaking things.Lang Hames2012-01-281-24/+0
| | | | llvm-svn: 149163
* Revert r149159 until I can fix tests.Bill Wendling2012-01-281-61/+32
| | | | llvm-svn: 149162
* Allow the external AST source to provide a layout without specifyingDouglas Gregor2012-01-281-42/+76
| | | | | | | the alignment (because it's not encoded in DWARF). In this case, make an educated guess at the alignment. llvm-svn: 149161
* Adding the DWARF parser side for assited layout where the AST contextGreg Clayton2012-01-285-136/+330
| | | | | | | | | will ask ExternalASTSource objects to help laying out a type. This is needed because the DWARF typically doesn't contain alignement or packing attribute values, and we need to be able to match up types that the compiler uses in expressions. llvm-svn: 149160
* Don't always create a separate block for the call to _Unwind_Resume.Bill Wendling2012-01-281-32/+61
| | | | | | | | | | | Sometimes there is only one 'resume' instruction per function. In those situations, we don't need a separate block for the call to _Unwind_Resume. In fact, it adds a lot of overhead to code-gen if we do that -- especially at -O0. If we have a single 'resume' instruction, just generate the call within that block. <rdar://problem/10694814> llvm-svn: 149159
OpenPOWER on IntegriCloud