| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 181070
|
|
|
|
| |
llvm-svn: 181069
|
|
|
|
|
|
|
|
| |
caused a restart.
rdar://problem/13788593
llvm-svn: 181068
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we would clone the current diagnostic consumer to produce
a new diagnostic consumer to use when building a module. The problem
here is that we end up losing diagnostics for important diagnostic
consumers, such as serialized diagnostics (where we'd end up with two
diagnostic consumers writing the same output file). With forwarding,
the diagnostics from all of the different modules being built get
forwarded to the one serialized-diagnostic consumer and are emitted in
a sane way.
Fixes <rdar://problem/13663996>.
llvm-svn: 181067
|
|
|
|
| |
llvm-svn: 181066
|
|
|
|
|
|
|
|
| |
MacroArgs object that provides information about
the argument tokens for a function macro.
llvm-svn: 181065
|
|
|
|
|
|
| |
consistency with ObjCInterfaceDecl::getSuperClassLoc()
llvm-svn: 181064
|
|
|
|
|
|
|
| |
help performance -- if the FileSpec we're examining does not contain the
UUID we're looking for, don't bother examining the file any further.
llvm-svn: 181063
|
|
|
|
| |
llvm-svn: 181062
|
|
|
|
|
|
|
|
| |
lldb_private::Process.m_private_run_lock variable.
If someone on Linux and/or FreeBSD can try to comment out the " #if defined(__APPLE__)" that surrounds access to "m_private_run_lock" and run the test suite, that would be nice. The new location where the locking/unlocking happens is bulletproof on MacOSX, and I want to verify that it is good on linux as well.
llvm-svn: 181061
|
|
|
|
|
|
| |
There isn't a speedup when using unbuffered I/O. It slows it down in fact.
llvm-svn: 181060
|
|
|
|
| |
llvm-svn: 181059
|
|
|
|
| |
llvm-svn: 181057
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Un-break the gdb buildbot.
- Use the debug location of the return expression for the cleanup code
if the return expression is trivially evaluatable, regardless of the
number of stop points in the function.
- Ensure that any EH code in the cleanup still gets the line number of
the closing } of the lexical scope.
- Added a testcase with EH in the cleanup.
rdar://problem/13442648
llvm-svn: 181056
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Decouples RegisterContext_x86_64 from UserArea.
- Restores the original definition of UserArea so that it can be used to generate offsets for use with ptrace.
- Moves UserArea to the 64-bit Linux specialization.
- Also fixes an off-by-one error for the size of m_gpr.
- Also adds a TODO comment noting the need for a mechanism to identify the correct plugin based on the target OS (and architecture).
Reviewed by: Matt Kopec and Samuel Jacob
llvm-svn: 181055
|
|
|
|
|
|
|
|
|
|
|
|
| |
PowerPC assemblers are supposed to support a stand-alone '$' symbol
as an alternative of '.' to refer to the current PC. This does not
work in the LLVM assembler parser yet.
To avoid bootstrap failures when using the LLVM assembler as system
assembler, this patch modifies the assembler source code generated
by LLVM to avoid using '$' (and simply use '.' instead).
llvm-svn: 181054
|
|
|
|
|
|
|
|
|
| |
This patch adds support for PowerPC platform-specific variant
kinds in MCSymbolRefExpr::getVariantKindForName, and also
adds a test case to verify they are translated to the appropriate
fixup type.
llvm-svn: 181053
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds a couple of Book II instructions (isync, icbi) to the
PowerPC assembler parser. These are needed when bootstrapping clang
with the integrated assembler forced on, because they are used in
inline asm statements in the code base.
The test case adds the full list of Book II storage control instructions,
including associated extended mnemonics. Again, those that are not yet
supported as marked as FIXME.
llvm-svn: 181052
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds infrastructure to support extended mnemonics in the
PowerPC assembler parser. It adds support specifically for those
extended mnemonics that LLVM will itself generate.
The test case lists *all* extended mnemonics according to the
PowerPC ISA v2.06 Book I, but marks those not yet supported
as FIXME.
llvm-svn: 181051
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds assembler parser support to the PowerPC back end.
The parser will run for any powerpc-*-* and powerpc64-*-* triples,
but was tested only on 64-bit Linux. The supported syntax is
intended to be compatible with the GNU assembler.
The parser does not yet support all PowerPC instructions, but
it does support anything that is generated by LLVM itself.
There is no support for testing restricted instruction sets yet,
i.e. the parser will always accept any instructions it knows,
no matter what feature flags are given.
Instruction operands will be checked for validity and errors
generated. (Error handling in general could still be improved.)
The patch adds a number of test cases to verify instruction
and operand encodings. The tests currently cover all instructions
from the following PowerPC ISA v2.06 Book I facilities:
Branch, Fixed-point, Floating-Point, and Vector.
Note that a number of these instructions are not yet supported
by the back end; they are marked with FIXME.
A number of follow-on check-ins will add extra features. When
they are all included, LLVM passes all tests (including bootstrap)
when using clang -cc1as as the system assembler.
llvm-svn: 181050
|
|
|
|
| |
llvm-svn: 181049
|
|
|
|
|
|
|
|
|
|
|
| |
Add serialization for captured statements and captured decls. Also add
a const_capture_iterator to CapturedStmt.
Test contributed by Wei Pan
Differential Revision: http://llvm-reviews.chandlerc.com/D727
llvm-svn: 181048
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
functions. No function change.
This function consists of following steps:
1. Collect dependent memory accesses.
2. Analyze availability.
3. Perform fully redundancy elimination, or
4. Perform PRE, depending on the availability
Step 2, 3 and 4 are now moved to three helper routines.
llvm-svn: 181047
|
|
|
|
|
|
| |
it when visiting such subexpressions.
llvm-svn: 181046
|
|
|
|
| |
llvm-svn: 181045
|
|
|
|
|
|
| |
Improvements to the std::map data formatter to recognize when invalid memory is being explored and bail out instead of looping for a potentially very long time
llvm-svn: 181044
|
|
|
|
|
|
|
|
|
|
|
| |
Move the creation of CapturedStmt parameters out of CodeGen and into
Sema, making it easier to customize the outlined function. The
ImplicitParamDecls are stored in the CapturedDecl using an
ASTContext-allocated array.
Differential Revision: http://llvm-reviews.chandlerc.com/D722
llvm-svn: 181043
|
|
|
|
| |
llvm-svn: 181042
|
|
|
|
|
|
|
|
|
|
|
| |
its fields.
This removes false dependencies between DSP instructions which access different
fields of the the control register. Implicit register operands are added to
instructions RDDSP and WRDSP after instruction selection, depending on the
value of the mask operand.
llvm-svn: 181041
|
|
|
|
|
|
| |
Not guaranteed to do anything useful yet.
llvm-svn: 181040
|
|
|
|
|
|
| |
provided.
llvm-svn: 181039
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
values.
By supporting the vectorization of PHINodes with more than two incoming values we can increase the complexity of nested if statements.
We can now vectorize this loop:
int foo(int *A, int *B, int n) {
for (int i=0; i < n; i++) {
int x = 9;
if (A[i] > B[i]) {
if (A[i] > 19) {
x = 3;
} else if (B[i] < 4 ) {
x = 4;
} else {
x = 5;
}
}
A[i] = x;
}
}
llvm-svn: 181037
|
|
|
|
| |
llvm-svn: 181035
|
|
|
|
| |
llvm-svn: 181034
|
|
|
|
|
|
| |
This can be optimized using the BFI_INT instruction.
llvm-svn: 181033
|
|
|
|
| |
llvm-svn: 181032
|
|
|
|
|
|
|
|
| |
checking for a lambda.
Thanks to Jordan for the pointer.
llvm-svn: 181031
|
|
|
|
|
|
|
|
|
|
|
| |
It is preferable for a unit test to be responsible for creating its own input
data instead of relying on checked-in data files. Now the IncludeExcludeTest
for cpp11-migrate does this.
- Removed old data files.
- Updated build system and lit files to remove references to old data files.
llvm-svn: 181029
|
|
|
|
| |
llvm-svn: 181028
|
|
|
|
|
|
| |
Reviewed by: Daniel Malea
llvm-svn: 181027
|
|
|
|
|
|
| |
Should fix PR15877.
llvm-svn: 181026
|
|
|
|
| |
llvm-svn: 181025
|
|
|
|
|
|
| |
r180993.
llvm-svn: 181024
|
|
|
|
|
|
| |
git-svn accidentally added these for me.
llvm-svn: 181023
|
|
|
|
|
|
|
|
| |
InitializationSequence::Diagnose()
Patch by Robert Wilhelm.
llvm-svn: 181022
|
|
|
|
|
|
|
|
|
| |
Clang always calls setWarnOnSpellCheck, but we shouldn't require every client to
do so.
Issue noticed by Enea Zaffanella.
llvm-svn: 181021
|
|
|
|
|
|
| |
Before: for (int i = 0;(i < 10); ++i) {}
After: for (int i = 0; (i < 10); ++i) {}
llvm-svn: 181020
|
|
|
|
| |
llvm-svn: 181019
|
|
|
|
|
|
| |
r180993.
llvm-svn: 181018
|
|
|
|
|
|
| |
Before: for (; a&& b;) {}
After: for (; a && b;) {}
llvm-svn: 181017
|