| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Downgrade error for non-wide character literals with an unexpected encoding to a warning for compatibility with gcc and older versions of clang. <rdar://problem/10837678>.
llvm-svn: 150295
|
| |
|
|
|
|
|
| |
simplicity. Also addresses a FIXME, although not one that could be
observed.
llvm-svn: 150294
|
| |
|
|
|
|
| |
examples seem to work. Tests coming up soon.
llvm-svn: 150293
|
| |
|
|
|
|
| |
double-check that this is correct.)
llvm-svn: 150292
|
| |
|
|
|
|
|
| |
a reference for the instantiation decl. Also test that its location is correct
after previous commit.
llvm-svn: 150291
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to the pattern template that it came from, otherwise we had this situation:
template <typename T1, typename T2>
struct S {
};
template <typename T>
struct S<T, int> {
};
void f() {
S<int, int> s; // location of declaration "S<int, int>" was of "S<T1, T2>" not "S<T, int>"
}
llvm-svn: 150290
|
| |
|
|
|
|
|
|
|
|
|
|
| |
"target modules lookup" also work with the
"--function" option, so you can search for
functions that aren't inlined. This is the
same query that the expression parser makes, so
it's good for diagnosing situations where the
expression parser doesn't find a function you
think should be there.
llvm-svn: 150289
|
| |
|
|
|
|
|
|
| |
When using register masks, registers like %rip are clobbered by the
register mask. LICM should still be able to hoist instructions reading
%rip from a loop containing calls.
llvm-svn: 150288
|
| |
|
|
|
|
|
| |
Again the goal is to produce identical assembly with register mask
operands enabled.
llvm-svn: 150287
|
| |
|
|
| |
llvm-svn: 150286
|
| |
|
|
|
|
| |
prettier.
llvm-svn: 150285
|
| |
|
|
| |
llvm-svn: 150284
|
| |
|
|
|
|
| |
recursive capture. This is far more interesting for IRgen.
llvm-svn: 150283
|
| |
|
|
|
|
| |
default arguments if in fact those lambdas capture any entity.
llvm-svn: 150282
|
| |
|
|
| |
llvm-svn: 150281
|
| |
|
|
|
|
|
|
| |
Sascha Wildner.
Setting UserLabelPrefix correctly fixes PR11949.
llvm-svn: 150280
|
| |
|
|
|
|
|
|
|
| |
indicate whether inline functions are desired.
This allows the expression parser, for instance,
to filter out inlined functions when looking for
functions it can call.
llvm-svn: 150279
|
| |
|
|
| |
llvm-svn: 150276
|
| |
|
|
| |
llvm-svn: 150275
|
| |
|
|
|
|
|
| |
Now that the clang driver passes the CPU and feature information to
the backend when processing assembly files (150273), this isn't necessary.
llvm-svn: 150274
|
| |
|
|
|
|
|
|
|
|
| |
When creating the MCSubtargetInfo, the assembler driver uses the CPU and
feature string to construct a more accurate model of what instructions
are and are not legal.
rdar://10840476
llvm-svn: 150273
|
| |
|
|
|
|
|
|
|
|
| |
detection of kernels into the object file and
adding a new category for raw binary images.
Fixed all clients who previously searched for
sections manually, making them use the object
file's facilities instead.
llvm-svn: 150272
|
| |
|
|
| |
llvm-svn: 150271
|
| |
|
|
| |
llvm-svn: 150268
|
| |
|
|
| |
llvm-svn: 150267
|
| |
|
|
| |
llvm-svn: 150266
|
| |
|
|
|
|
| |
ASTMutationListener.
llvm-svn: 150265
|
| |
|
|
|
|
| |
specialization in its USR string.
llvm-svn: 150264
|
| |
|
|
| |
llvm-svn: 150262
|
| |
|
|
|
|
|
|
| |
It can be necessary to detach a register mask pointer from its
MachineOperand. This method is convenient for checking clobbered
physregs on a detached bitmask pointer.
llvm-svn: 150261
|
| |
|
|
|
|
| |
Fixes <rdar://problem/8269537>.
llvm-svn: 150260
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes global live range splitting behave identically with and
without register mask operands.
This is not necessarily the best way of using register masks for live
range splitting. It would be more efficient to first split global live
ranges around calls (i.e., register masks), and reserve the fine grained
per-physreg interference guidance for global live ranges that do not
cross calls.
For now the goal is to produce identical assembly when enabling register
masks.
llvm-svn: 150259
|
| |
|
|
| |
llvm-svn: 150258
|
| |
|
|
|
|
| |
the compiler in r144100
llvm-svn: 150257
|
| |
|
|
|
|
|
|
|
|
|
|
| |
default is '=', and reword the warning about explicitly capturing
'this' in such lambdas to indicate that only explicit capture is
banned.
Introduce Fix-Its for this and other "save the programmer from
themself" rules regarding what can be explicitly captured and what
must be implicitly captured.
llvm-svn: 150256
|
| |
|
|
|
|
|
|
| |
nested captures. We currently don't get odr-use correct in array
bounds, so that bit is commented out while we sort out what we need to
do.
llvm-svn: 150255
|
| |
|
|
| |
llvm-svn: 150254
|
| |
|
|
| |
llvm-svn: 150253
|
| |
|
|
|
|
|
|
| |
have finished parsing the body, so that name lookup will never find
anything within the closure type. Then, add this operator() and the
conversion function (if available) before completing the class.
llvm-svn: 150252
|
| |
|
|
| |
llvm-svn: 150251
|
| |
|
|
|
|
|
|
| |
This allows BBVectorize to check the "unknown instruction" list in the
alias sets. This is important to prevent instruction fusing from reordering
function calls. Resolves PR11920.
llvm-svn: 150250
|
| |
|
|
| |
llvm-svn: 150249
|
| |
|
|
|
|
|
|
| |
These query functions are safe for external use and, furthermore,
are the only way to make queries against the "unknown instructions" array.
BBVectorize will use these functions.
llvm-svn: 150248
|
| |
|
|
|
|
| |
don't assume it is a boolean.
llvm-svn: 150247
|
| |
|
|
|
|
|
|
|
|
| |
is that patterns no longer match for vectors of booleans, because you only get
ConstantDataVector when the vector element type is i8, i16, etc, not when it is
i1). Original commit message:
Remove some dead code and tidy things up now that vectors use ConstantDataVector
instead of always using ConstantVector.
llvm-svn: 150246
|
| |
|
|
|
|
|
|
|
| |
pointer from MCInstrDesc.
Make them accessible through MCInstrInfo. They are only used for debugging purposes so this doesn't
have an impact on performance. X86MCTargetDesc.o goes from 630K to 461K on x86_64.
llvm-svn: 150245
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
o Correct the handling of the restrictions on usage of cv-qualified and
ref-qualified function types.
o Fix a bug where such types were rejected in template type parameter default
arguments, due to such arguments not being treated as a template type arg
context.
o Remove the ExtWarn for usage of such types as template arguments; that was
a standard defect, not a GCC extension.
o Improve the wording and unify the code for diagnosing cv-qualifiers with the
code for diagnosing ref-qualifiers.
llvm-svn: 150244
|
| |
|
|
| |
llvm-svn: 150243
|
| |
|
|
| |
llvm-svn: 150242
|
| |
|
|
|
|
|
|
|
|
|
| |
to pretty-print such function types better, and to fix a case where we were not
instantiating templates in lexical order. In passing, move the Variadic bit from
Type's bitfields to FunctionProtoType to get the Type bitfields down to 32 bits.
Also ensure that we always substitute the return type of a function when
substituting explicitly-specified arguments, since that can cause us to bail
out with a SFINAE error before we hit a hard error in parameter substitution.
llvm-svn: 150241
|