- Feb 23, 2012
-
-
Eli Friedman authored
Try to handle qualifiers more consistently for array InitListExprs. Fixes <rdar://problem/10907510>, and makes the ASTs a bit more self-consistent. (I've chosen to keep the qualifiers, but it isn't a strong preference; if anyone prefers removing them, please yell.) llvm-svn: 151229
-
Andrew Trick authored
Added array subscript to SparseSet for convenience. Slight reorg to make it easier to manage the def/use sets. llvm-svn: 151228
-
Richard Smith authored
C++11, and with braced-init-list initializers in conditions. This exposed an ambiguity with enum underlying types versus bitfields, which we resolve by treating 'enum E : T {' as always defining an enumeration (even if it would only successfully parse as a bitfield). This appears to be g++ compatible. llvm-svn: 151227
-
Jakob Stoklund Olesen authored
llvm-svn: 151226
-
Aaron Ballman authored
llvm-svn: 151225
-
Evan Cheng authored
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
-
Jakob Stoklund Olesen authored
llvm-svn: 151223
-
Jakob Stoklund Olesen authored
The bulk masking operations from register mask operands don't account for reserved registers. llvm-svn: 151222
-
Sean Callanan authored
llvm-svn: 151221
-
Anna Zaks authored
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
-
Ted Kremenek authored
llvm-svn: 151219
-
Ted Kremenek authored
llvm-svn: 151218
-
Eric Christopher authored
llvm-svn: 151217
-
Eric Christopher authored
llvm-svn: 151216
-
Sean Callanan authored
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
-
Daniel Dunbar authored
llvm-svn: 151213
-
Johnny Chen authored
llvm-svn: 151212
-
- Feb 22, 2012
-
-
Jakob Stoklund Olesen authored
llvm-svn: 151211
-
Jakob Stoklund Olesen authored
llvm-svn: 151210
-
Jim Ingham authored
convenient to provide a log callback right when the debugger is created. llvm-svn: 151209
-
Fariborz Jahanian authored
llvm-svn: 151208
-
Andrew Trick authored
llvm-svn: 151205
-
Nick Kledzik authored
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
-
Chad Rosier authored
llvm-svn: 151203
-
Greg Clayton authored
llvm-svn: 151202
-
Fariborz Jahanian authored
llvm-svn: 151201
-
Hal Finkel authored
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
-
Benjamin Kramer authored
llvm-svn: 151199
-
Benjamin Kramer authored
Revert the RTTI change from r151187. It make lldb compile with g++ 4.4 but it doesn't link anymore. The bug seems to be fixed in g++ 4.5. llvm-svn: 151198
-
Chad Rosier authored
llvm-svn: 151192
-
Benjamin Kramer authored
llvm-svn: 151191
-
Greg Clayton authored
subclasses if the object files support version numbering. Exposed this through SBModule for upcoming data formatter version checking stuff. llvm-svn: 151190
-
Bill Wendling authored
llvm-svn: 151189
-
Anna Zaks authored
- 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
-
Benjamin Kramer authored
llvm-svn: 151187
-
Chris Lattner authored
llvm-svn: 151186
-
Joerg Sonnenberger authored
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
-
Chad Rosier authored
llvm-svn: 151184
-
Michael J. Spencer authored
Patch by Joe Groff! llvm-svn: 151183
-
Johnny Chen authored
llvm-svn: 151182
-