summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Handle regmasks in FixupKills.Jakob Stoklund Olesen2012-02-231-0/+4
| | | | llvm-svn: 151226
* Turned on support for __declspec(deprecated) in MS compatibility mode.Aaron Ballman2012-02-232-1/+16
| | | | llvm-svn: 151225
* Optimize a couple of common patterns involving conditional moves where the falseEvan Cheng2012-02-236-8/+358
| | | | | | | | | | | | | | | | | | | | | value is zero. Instead of a cmov + op, issue an conditional op instead. e.g. cmp r9, r4 mov r4, #0 moveq r4, #1 orr lr, lr, r4 should be: cmp r9, r4 orreq lr, lr, #1 That is, optimize (or x, (cmov 0, y, cond)) to (or.cond x, y). Similarly extend this to xor as well as (and x, (cmov -1, y, cond)) => (and.cond x, y). It's possible to extend this to ADD and SUB but I don't think they are common. rdar://8659097 llvm-svn: 151224
* Handle regmasks in CriticalAntiDepBreaker.Jakob Stoklund Olesen2012-02-231-0/+14
| | | | llvm-svn: 151223
* Track reserved registers separately from RegsAvailable.Jakob Stoklund Olesen2012-02-232-7/+7
| | | | | | | The bulk masking operations from register mask operands don't account for reserved registers. llvm-svn: 151222
* Made the hidden-ivar test a little more rigorous.Sean Callanan2012-02-232-16/+31
| | | | llvm-svn: 151221
* [analyzer] Invalidate the region passed to pthread_setspecific() call.Anna Zaks2012-02-234-2/+40
| | | | | | | | | | | | | | | | | | Make this call an exception in ExprEngine::invalidateArguments: 'int pthread_setspecific(ptheread_key k, const void *)' stores a value into thread local storage. The value can later be retrieved with 'void *ptheread_getspecific(pthread_key)'. So even thought the parameter is 'const void *', the region escapes through the call. (Here we just blacklist the call in the ExprEngine's default logic. Another option would be to add a checker which evaluates the call and triggers the call to invalidate regions.) Teach the Malloc Checker, which treats all system calls as safe about the API. llvm-svn: 151220
* Tweak release note comments for checker build.Ted Kremenek2012-02-231-1/+2
| | | | llvm-svn: 151219
* Update checker build to checker-261.Ted Kremenek2012-02-232-1/+14
| | | | llvm-svn: 151218
* Add a quick TODO.Eric Christopher2012-02-231-0/+1
| | | | llvm-svn: 151217
* Fold debug scope emission into the cleanup scope.Eric Christopher2012-02-231-9/+2
| | | | llvm-svn: 151216
* Added support for looking up the complete type forSean Callanan2012-02-2230-132/+627
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Objective-C classes. This allows LLDB to find ivars declared in class extensions in modules other than where the debugger is currently stopped (we already supported this when the debugger was stopped in the same module as the definition). This involved the following main changes: - The ObjCLanguageRuntime now knows how to hunt for the authoritative version of an Objective-C type. It looks for the symbol indicating a definition, and then gets the type from the module containing that symbol. - ValueObjects now report their type with a potential override, and the override is set if the type of the ValueObject is an Objective-C class or pointer type that is defined somewhere other than the original reported type. This means that "frame variable" will always use the complete type if one is available. - The ClangASTSource now looks for the complete type when looking for ivars. This means that "expr" will always use the complete type if one is available. - I added a testcase that verifies that both "frame variable" and "expr" work. llvm-svn: 151214
* MC: Fix the MCNullStreamer which was broken in r147763.Daniel Dunbar2012-02-222-0/+15
| | | | llvm-svn: 151213
* Add @expectedFailure decorator with radar number.Johnny Chen2012-02-221-0/+4
| | | | llvm-svn: 151212
* Don't compute latencies for regmask operands.Jakob Stoklund Olesen2012-02-221-1/+3
| | | | llvm-svn: 151211
* Handle regmasks in RegisterScavenging.Jakob Stoklund Olesen2012-02-221-0/+4
| | | | llvm-svn: 151210
* Make Debugger::SetLoggingCallback public, and expose it through the SB API. ↵Jim Ingham2012-02-224-5/+19
| | | | | | | | Sometimes it is not convenient to provide a log callback right when the debugger is created. llvm-svn: 151209
* another test for modern ivar access rewrite.Fariborz Jahanian2012-02-221-0/+46
| | | | llvm-svn: 151208
* misched: Use SparseSet for VRegDegs for constant time clear().Andrew Trick2012-02-222-16/+41
| | | | llvm-svn: 151205
* Add support for SharedLibraryAtoms (proxy atoms for exported symbols from a Nick Kledzik2012-02-2223-134/+1230
| | | | | | | | shared library) and AbsoluteAtoms (proxy atoms for absolute address (e.g. ROM)). Redesign weak importing as can-be-null-at-runtime and can-be-null-at-build-time. Add lots of test cases for all the above. llvm-svn: 151204
* Revert r151172: Unwind path cleanup for array new list initializers.Chad Rosier2012-02-222-72/+7
| | | | llvm-svn: 151203
* Added support for the DWARF 4 DW_FORM values.Greg Clayton2012-02-221-140/+66
| | | | llvm-svn: 151202
* more tests for modern objc translator.Fariborz Jahanian2012-02-222-1/+30
| | | | llvm-svn: 151201
* Allow the use of an alternate symbol for calculating a function's size.Hal Finkel2012-02-224-2/+32
| | | | | | | | | | | | | The standard function epilog includes a .size directive, but ppc64 uses an alternate local symbol to tag the actual start of each function. Until recently, binutils accepted the .size directive as: .size test1, .Ltmp0-test1 however, using this directive with recent binutils will result in the error: .size expression for XXX does not evaluate to a constant so we must use the label which actually tags the start of the function. llvm-svn: 151200
* Remove extra semicolon (breaking g++ builds).Benjamin Kramer2012-02-221-2/+2
| | | | llvm-svn: 151199
* Revert the RTTI change from r151187. It make lldb compile with g++ 4.4 but ↵Benjamin Kramer2012-02-221-3/+0
| | | | | | it doesn't link anymore. The bug seems to be fixed in g++ 4.5. llvm-svn: 151198
* Improve placement of clang crash diagnostics section.Chad Rosier2012-02-221-21/+21
| | | | llvm-svn: 151192
* Makefile build: remove warning flag that's not supported by GCC.Benjamin Kramer2012-02-221-1/+1
| | | | llvm-svn: 151191
* Added the ability to get a ObjectFile versions from the ObjectFileGreg Clayton2012-02-226-69/+263
| | | | | | | subclasses if the object files support version numbering. Exposed this through SBModule for upcoming data formatter version checking stuff. llvm-svn: 151190
* Remove bad comma from .el file.Bill Wendling2012-02-221-1/+1
| | | | llvm-svn: 151189
* [analyzer] Malloc cleanup:Anna Zaks2012-02-222-99/+88
| | | | | | | | | | | | - We should not evaluate strdup in the Malloc Checker, it's the job of CString checker, so just update the RefState to reflect allocated memory. - Refactor to reduce LOC: remove some wrapper auxiliary functions, make all functions return the state and add the transition in one place (instead of in each auxiliary function). llvm-svn: 151188
* Enable RTTI for the Makefile build, hopefully getting the linux build a bit ↵Benjamin Kramer2012-02-221-0/+3
| | | | | | further. llvm-svn: 151187
* libclc is now dual licensed, Tobias and Peter own their respective subprojects.Chris Lattner2012-02-221-1/+5
| | | | llvm-svn: 151186
* Revert part of r148839 and keep DefaultTargetTriple in the form adjustedJoerg Sonnenberger2012-02-224-0/+22
| | | | | | | | | | by -target and similar options. As discussed in PR 12026, the change broke support for target-prefixed tools, i.e. calling x86_64--linux-ld when compiling for x86_64--linux. Improve the test cases added originally in r149083 to not require execution, just executable files. Document the hack with appropiate FIXME comments. llvm-svn: 151185
* Add clang crash diagnostic info and associated flags to Clang user manual.Chad Rosier2012-02-221-0/+22
| | | | llvm-svn: 151184
* Properly emit _fltused with FastISel. Refactor to share code with SDAG.Michael J. Spencer2012-02-229-27/+68
| | | | | | Patch by Joe Groff! llvm-svn: 151183
* Minor modification.Johnny Chen2012-02-221-1/+1
| | | | llvm-svn: 151182
* Update set-xcode-analyzer to work with Xcode repackaging in Xcode 4.3Ted Kremenek2012-02-221-1/+9
| | | | llvm-svn: 151179
* Comment from code reviewAndrew Trick2012-02-221-0/+1
| | | | llvm-svn: 151178
* Add new driver warning from r151174 to a warning group. Please let me know ↵Chad Rosier2012-02-221-1/+2
| | | | | | if this isn't the appropriate grouping. llvm-svn: 151177
* modern objc translator. more writing of modern ivar accessFariborz Jahanian2012-02-223-4/+33
| | | | | | abi. llvm-svn: 151176
* Updated our main LLDB page as it was vastly out of date. Greg Clayton2012-02-221-3/+40
| | | | llvm-svn: 151175
* [driver] Add a warning for when -mcpu= is specified without an argument. ThereChad Rosier2012-02-222-0/+8
| | | | | | | are likely many other OPT_xxxx_EQ options that could/should be added here. rdar://10704648 llvm-svn: 151174
* Doug's review comments.Sebastian Redl2012-02-222-2/+2
| | | | llvm-svn: 151173
* Unwind path cleanup for array new list initializers.Sebastian Redl2012-02-222-7/+72
| | | | llvm-svn: 151172
* CodeGen for array new list initializers. Doesn't correctly clean up in the ↵Sebastian Redl2012-02-222-27/+102
| | | | | | face of exceptions yet. llvm-svn: 151171
* Teach overload resolution to prefer user-defined conversion via aDouglas Gregor2012-02-222-0/+79
| | | | | | | | | | lambda closure type's function pointer conversion over user-defined conversion via a lambda closure type's block pointer conversion, always. This is a preference for more-standard code (since blocks are an extension) and a nod to efficiency, since function pointers don't require any memory management. Fixes PR12063. llvm-svn: 151170
* Remove extra semi-colons.Chad Rosier2012-02-227-9/+9
| | | | llvm-svn: 151169
* Remove unused python includes from headers.Benjamin Kramer2012-02-222-16/+1
| | | | | | | | | Python.h is a bad c++ citizen and overwrites some functions with its own macros. This conflicts with libc++'s locale header. I did some refactoring to use Python.h only where it's actually needed a few months ago so the unnecessary includes can be removed now. llvm-svn: 151168
* 80 col.Jakob Stoklund Olesen2012-02-221-3/+5
| | | | llvm-svn: 151167
OpenPOWER on IntegriCloud