| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
templates are getting hairy
llvm-svn: 160131
|
| |
|
|
|
|
|
|
| |
path passed with -w
Test this functionality.
llvm-svn: 160130
|
| |
|
|
|
|
|
|
| |
machines, because we select different instructions such as vbroadcast, new shuffles, etc.
Patch by Michael Liao.
llvm-svn: 160129
|
| |
|
|
| |
llvm-svn: 160128
|
| |
|
|
| |
llvm-svn: 160127
|
| |
|
|
|
|
|
|
| |
<*mmintrin.h> .
Rawr!
llvm-svn: 160125
|
| |
|
|
| |
llvm-svn: 160124
|
| |
|
|
| |
llvm-svn: 160123
|
| |
|
|
| |
llvm-svn: 160122
|
| |
|
|
|
|
| |
PR12785
llvm-svn: 160121
|
| |
|
|
|
|
| |
builds.
llvm-svn: 160120
|
| |
|
|
| |
llvm-svn: 160118
|
| |
|
|
|
|
|
|
|
| |
The rdrand/cmov sequence is the same that is emitted by both
GCC and ICC.
Fixes PR13284.
llvm-svn: 160117
|
| |
|
|
|
|
|
|
|
| |
the input vector, it can be bigger (this is helpful for powerpc where <2 x i16>
is a legal vector type but i16 isn't a legal type, IIRC). However this wasn't
being taken into account by ExpandRes_EXTRACT_VECTOR_ELT, causing PR13220.
Lightly tweaked version of a patch by Michael Liao.
llvm-svn: 160116
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
One adds matchers for the various parts of a for loop (initializer, condition,
increment), as well as extending the hasBody matcher to work for while and
do-while loops. The second patch adds an isInteger matcher for types.
The third patch fixes a bug in allOf, where a few of the name chages
(AllOf --> allOf) had been missed.
All matchers come with unit tests.
Patches by Sam Panzer!
llvm-svn: 160115
|
| |
|
|
|
|
|
|
|
|
| |
depends on locale settings.
If a non-unicode locale is used, the unicode character is escaped and any
byte that is in the escaped representation but not the semicolon will
become whitespace.
llvm-svn: 160113
|
| |
|
|
| |
llvm-svn: 160112
|
| |
|
|
| |
llvm-svn: 160111
|
| |
|
|
|
|
| |
myself and Manman Ren.
llvm-svn: 160110
|
| |
|
|
| |
llvm-svn: 160107
|
| |
|
|
| |
llvm-svn: 160106
|
| |
|
|
|
|
| |
pr13338.
llvm-svn: 160105
|
| |
|
|
|
|
| |
behavior and is the first step in fixing pr13338.
llvm-svn: 160104
|
| |
|
|
|
|
|
|
|
| |
Failing Tests (3):
Clang :: Index/complete-cxx-inline-methods.cpp
Clang :: Index/recursive-cxx-member-calls.cpp
Clang :: SemaTemplate/inject-templated-friend-post.cpp
llvm-svn: 160103
|
| |
|
|
| |
llvm-svn: 160102
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
%shr = lshr i64 %key, 3
%0 = load i64* %val, align 8
%sub = add i64 %0, -1
%and = and i64 %sub, %shr
ret i64 %and
to:
%shr = lshr i64 %key, 3
%0 = load i64* %val, align 8
%sub = add i64 %0, 2305843009213693951
%and = and i64 %sub, %shr
ret i64 %and
The demanded bit optimization is actually a pessimization because add -1 would
be codegen'ed as a sub 1. Teach the demanded constant shrinking optimization
to check for negated constant to make sure it is actually reducing the width
of the constant.
rdar://11793464
llvm-svn: 160101
|
| |
|
|
|
|
|
|
| |
ConnectionFileDescriptor class is managing, so we can always pop ourselves out of our select call regardless of how well behaved the channel we are talking to is.
<rdar://problem/11448282>
llvm-svn: 160100
|
| |
|
|
|
|
|
|
| |
generation of the FDE index.
<rdar://problem/11813705>
llvm-svn: 160099
|
| |
|
|
|
|
|
|
|
|
|
| |
def Pat<...>;
Results in 'record name is not a string!' diagnostic. Not the best,
but the lack of location information moves it from not very helpful
into completely useless. We're in the Record class when throwing the
error, so just add the location info directly.
llvm-svn: 160098
|
| |
|
|
|
|
| |
sense to pass (unsigned)-(unsigned) to abs().
llvm-svn: 160097
|
| |
|
|
| |
llvm-svn: 160096
|
| |
|
|
|
|
|
|
|
|
|
|
| |
UnwindPlans for a function. This specifically does not use any
previously-generated UnwindPlans so if any logging is performed
while creating the UnwindPlans, it will be repeated. This is
useful for when an lldb stack trace is not correct and you want
to gather diagnostic information from the user -- they can do
log enable -v lldb unwind, image show-unwind of the function, and
you'll get the full logging as the UnwindPlans are recreated.
llvm-svn: 160095
|
| |
|
|
|
|
|
|
| |
Previously we were using the static type of the base object to inline
methods, whether virtual or non-virtual. Now, we try to see if the base
object has a known type, and if so ask for its implementation of the method.
llvm-svn: 160094
|
| |
|
|
| |
llvm-svn: 160093
|
| |
|
|
|
|
|
|
| |
flag as noted in the OpenCL Spec.
Includes a test case.
llvm-svn: 160092
|
| |
|
|
|
|
|
|
| |
as expected on Mac OS X.
<rdar://problem/11813365>
llvm-svn: 160091
|
| |
|
|
|
|
|
|
| |
It is safe if CPSR is killed or re-defined.
When we are done with the basic block, check whether CPSR is live-out.
Do not optimize away cmp if CPSR is live-out.
llvm-svn: 160090
|
| |
|
|
|
|
|
| |
Fixes PR13314, clang crashing on blocks refering to an enclosing local
when the enclosing function returns void.
llvm-svn: 160089
|
| |
|
|
|
|
|
| |
static_assert fails when parsing the template, don't diagnose it again on every
instantiation.
llvm-svn: 160088
|
| |
|
|
| |
llvm-svn: 160087
|
| |
|
|
| |
llvm-svn: 160086
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
what it points to, to detect when the deref of that pointer points to something valid. So if you have:
% cat sp.cpp
#include <tr1/memory>
class A
{
public:
A (): m_i (12) {}
virtual ~A() {}
private:
int m_i;
};
int main (int argc, char const *argv[], char const *envp[])
{
A *a_pointers[2] = { NULL, NULL };
A a1;
A a2;
a_pointers[0] = &a1;
a_pointers[1] = &a2;
return 0;
}
And you stop at the "return 0", you can now read memory using the "address" format and see:
(lldb) memory read --format address `&a_pointers`
0x7fff5fbff870: 0x00007fff5fbff860 -> 0x00000001000010b0 vtable for A + 16
0x7fff5fbff878: 0x00007fff5fbff850 -> 0x00000001000010b0 vtable for A + 16
0x7fff5fbff880: 0x00007fff5fbff8d0
0x7fff5fbff888: 0x00007fff5fbff8c0
0x7fff5fbff890: 0x0000000000000001
0x7fff5fbff898: 0x36d54c275add2294
0x7fff5fbff8a0: 0x00007fff5fbff8b0
0x7fff5fbff8a8: 0x0000000100000bb4 a.out`start + 52
Note the extra dereference that was applied to 0x00007fff5fbff860 and 0x00007fff5fbff850 so we can see that these are "A" classes.
llvm-svn: 160085
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When WriteFragmentData() case FT_align called
Asm.getBackend().writeNopData() is called, nothing
is done since Mips implementation of writeNopData just
returned "true".
For some reason this has not caused problems in 32 bit
mode, but in 64 bit mode it caused an assert when processing
multiple function units.
The test case included will assert without this patch. It
runs twice with different flags to prevent false positives
due to changes in code generation over time.
llvm-svn: 160084
|
| |
|
|
| |
llvm-svn: 160083
|
| |
|
|
| |
llvm-svn: 160082
|
| |
|
|
|
|
|
|
| |
Even though variable in question could not
be initialized before use, the code was such that
the compiler had no way of knowing that.
llvm-svn: 160081
|
| |
|
|
|
|
| |
this thread, return no stop reason.
llvm-svn: 160080
|
| |
|
|
| |
llvm-svn: 160079
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
diagnostics implemented -- see testcases.
I created a new TableGen file for comment diagnostics,
DiagnosticCommentKinds.td, because comment diagnostics don't logically
fit into AST diagnostics file. But I don't feel strongly about it.
This also implements support for self-closing HTML tags in comment
lexer and parser (for example, <br />).
In order to issue precise diagnostics CommentSema needs to know the
declaration the comment is attached to. There is no easy way to find a decl by
comment, so we match comments and decls in lockstep: after parsing one
declgroup we check if we have any new, not yet attached comments. If we do --
then we do the usual comment-finding process.
It is interesting that this automatically handles trailing comments.
We pick up not only comments that precede the declaration, but also
comments that *follow* the declaration -- thanks to the lookahead in
the lexer: after parsing the declgroup we've consumed the semicolon
and looked ahead through comments.
Added -Wdocumentation-html flag for semantic HTML errors to allow the user to
disable only HTML warnings (but not HTML parse errors, which we emit as
warnings in -Wdocumentation).
llvm-svn: 160078
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
the fact that a process exited while running a thread
plan. For example, if a user types the expression
expr (void)exit(0)
then the process terminates but LLDB does not notify
listeners like Xcode that this occurred.
<rdar://problem/11845155>
llvm-svn: 160077
|