| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
https://code.google.com/p/address-sanitizer/issues/detail?id=222 is fixed.
llvm-svn: 190597
|
| |
|
|
|
|
| |
fixes a failure when the main thread's stack is considered unlimited (very large).
llvm-svn: 190596
|
| |
|
|
|
|
| |
Added parsing of mask register and "zeroing" semantic, like {%k1} {z}.
llvm-svn: 190595
|
| |
|
|
|
|
| |
fake_stack exists (should fix 32-bit builds)
llvm-svn: 190594
|
| |
|
|
|
|
| |
exists (should fix 32-bit builds)
llvm-svn: 190593
|
| |
|
|
| |
llvm-svn: 190592
|
| |
|
|
| |
llvm-svn: 190591
|
| |
|
|
|
|
|
| |
Fixes PR17116.
Patch by 林作健 (manjian2006 at gmail.com).
llvm-svn: 190590
|
| |
|
|
| |
llvm-svn: 190589
|
| |
|
|
|
|
| |
and async-signal-safe. The implementation is not yet complete (see FIXMEs) but the existing tests pass.
llvm-svn: 190588
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Aggressive anti-dependency breaking is enabled by default for all PPC cores.
This provides a general speedup on the P7 and other platforms (among other
factors, the instruction group formation for the non-embedded PPC cores is done
during post-RA scheduling). In order to do this safely, the incompatibility
between uses of the MFOCRF instruction and anti-dependency breaking are
resolved by marking MFOCRF with hasExtraSrcRegAllocReq. As noted in the removed
FIXME, the problem was that MFOCRF's output is sensitive to the identify of the
source register, and always paired with a shift to undo this effect. Because
anti-dependency breaking is unaware of this hidden dependency of the shift
amount on the source register of the MFOCRF instruction, changing that register
must be inhibited.
Two test cases were adjusted: The SjLj test was made more insensitive to
register choices and scheduling; the saveCR test disabled anti-dependency
breaking because part of what it is testing is proper register reuse.
llvm-svn: 190587
|
| |
|
|
| |
llvm-svn: 190586
|
| |
|
|
|
|
|
|
| |
Mangling scheme varies on platform, and prepending an underscore is valid only
on 32-bit x86. Added a method to mangle name to PECOFFLinkingContext and use
it to avoid hard coding mangled names.
llvm-svn: 190585
|
| |
|
|
|
|
|
|
|
|
|
|
| |
If no register classes are added to CriticalPathRCs, then the CriticalPathSet
bitmask will be empty. In that case, ExcludeRegs must remain NULL or else this
line will cause a segfault:
} else if ((ExcludeRegs != NULL) && ExcludeRegs->test(AntiDepReg)) {
I have no in-tree test case.
llvm-svn: 190584
|
| |
|
|
| |
llvm-svn: 190576
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
For _XYZ, the type of VDATA is v4i32, because v3i32 doesn't exist.
The ADDR64 bit is not exposed. A simpler intrinsic that doesn't take
a resource descriptor might be nicer.
The maximum number of input SGPRs is bumped to 17.
Signed-off-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 190575
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes some regressions in the piglit local memory store tests
introduced by recent commits which made the scheduler aware of the trans
slot.
It's not possible to test this using lit, because there is no way to
determine from the assembly dumps whether or not an instruction is in
the trans slot.
Even if this were possible, the test would be highly sensitive to
changes in the scheduler and might generate confusing false negatives.
Reviewed-by: Vincent Lejeune<vljn at ovi.com>
llvm-svn: 190574
|
| |
|
|
| |
llvm-svn: 190573
|
| |
|
|
|
|
|
|
|
| |
This allows the PC to be directly changed to a different line.
It's similar to the example python script in examples/python/jump.py, except implemented as a builtin.
Also this version will track the current function correctly even if the target line resolves to multiple addresses. (e.g. debugging a templated function)
llvm-svn: 190572
|
| |
|
|
| |
llvm-svn: 190571
|
| |
|
|
|
|
|
|
| |
communication, connection, host, module, mmap, os. Add those. Also
sort the entries so they come in alphabetical order, to make it a
little easier to scan down the list for a specific channel.
llvm-svn: 190570
|
| |
|
|
| |
llvm-svn: 190569
|
| |
|
|
|
|
| |
rdar://14971432
llvm-svn: 190568
|
| |
|
|
| |
llvm-svn: 190567
|
| |
|
|
| |
llvm-svn: 190566
|
| |
|
|
| |
llvm-svn: 190565
|
| |
|
|
|
|
|
|
| |
SVN r189964 provided a sample Python script to inspect unordered(multi){set|map} with synthetic children, contribued by Jared Grubb
This checkin converts that sample script to a C++ provider built into LLDB
A test case is also provided
llvm-svn: 190564
|
| |
|
|
|
|
| |
tests pass with them. I stumbled across them while experimenting with a std::move that checks its argument for non-const. The third corrects a test that is currently failing.
llvm-svn: 190563
|
| |
|
|
|
|
|
|
|
|
|
| |
As Andy pointed out to me a long time ago, there are no structural hazards in
the later pipeline stages of the A2, and so modeling them is useless. Also,
modeling the top pre-dispatch stages is deceiving because, when multiple
hardware threads are active, those resources are shared among the threads. The
bypass definitions were mostly wrong, and so those have been removed. The
resulting itinerary is much simpler, and more accurate.
llvm-svn: 190562
|
| |
|
|
|
|
|
|
| |
initializer_list.
rdar://14887351
llvm-svn: 190561
|
| |
|
|
|
|
| |
Just always regenerate SVNVersion.inc. Don't worry about it not changing.
llvm-svn: 190560
|
| |
|
|
|
|
|
|
| |
It'd be another issue that the terminal and stdout(including redirects) with utf8. This test XPASSed on Win32, at least on Lit.
FYI, we don't use a triplet like "-win64" anywhere.
llvm-svn: 190559
|
| |
|
|
|
|
|
| |
For embedded PPC cores (especially the A2 core), using the MI scheduler with AA
is far superior to the other scheduling options.
llvm-svn: 190558
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Now that LLVM's helper script GetSVN.cmake actually works consistently,
there's no reason not to use it. This does mean that the clangBasic target
is potentially always dirty, because CMake-generated projects do not
necessarily recalculate dependencies after running each target.
This should end the issues of the AST format changing and breaking old
module files; CMake-Clang should now detect that the version changed just
like Autoconf-Clang has.
llvm-svn: 190557
|
| |
|
|
|
|
|
|
|
| |
This allows the logic to work with Git, and also uses the variable names
to match what Clang is actually looking for.
This changes the interface of GetSVN.cmake. Clang change to follow.
llvm-svn: 190556
|
| |
|
|
|
|
|
| |
unknown methods which return Cocoa objects. No need to annotate
such methods.
llvm-svn: 190555
|
| |
|
|
| |
llvm-svn: 190554
|
| |
|
|
| |
llvm-svn: 190552
|
| |
|
|
| |
llvm-svn: 190551
|
| |
|
|
|
|
|
|
|
| |
specifically
requested, use the Target's architecture to pick the correct slice of a universal file.
<rdar://problem/14813869>
llvm-svn: 190550
|
| |
|
|
|
|
|
|
| |
The PowerPC A2 core greatly benefits from aggressive concatenation unrolling;
use the new getUnrollingPreferences to enable this by default when targeting
the PPC A2 core.
llvm-svn: 190549
|
| |
|
|
| |
llvm-svn: 190548
|
| |
|
|
| |
llvm-svn: 190547
|
| |
|
|
|
|
|
|
|
| |
Before:
for (int i = 0; i* 2 < z; i *= 2) {}
After:
for (int i = 0; i * 2 < z; i *= 2) {}
llvm-svn: 190546
|
| |
|
|
|
|
| |
arguments to map strings to the proper enumeration value. This makes error checking more consistent and reduces the amount of hand-written code required.
llvm-svn: 190545
|
| |
|
|
| |
llvm-svn: 190544
|
| |
|
|
| |
llvm-svn: 190543
|
| |
|
|
|
|
|
|
|
| |
Allow targets to customize the default behavior of the generic loop unrolling
transformation. This will be used by the PowerPC backend when targeting the A2
core (which is in-order with a deep pipeline), and using more aggressive
defaults is important.
llvm-svn: 190542
|
| |
|
|
| |
llvm-svn: 190541
|
| |
|
|
|
|
|
|
|
|
|
| |
Definition of DIRef used to require the full definition of DIType because
of usage of DIType::isType in DIRef::resolve. We now use DIDescriptor::isType
instead to remove the requirement and move definition of DIRef before DIType.
With this, we can move the definition of DIType::getContext to the header
file.
llvm-svn: 190540
|