| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
Reversing a CB* instruction used to drop the flags on the condition. On the
included testcase, this lead to a read from an undefined vreg.
Using addOperand keeps the flags, here <undef>.
Differential Revision: http://reviews.llvm.org/D6159
llvm-svn: 221507
|
| |
|
|
| |
llvm-svn: 221506
|
| |
|
|
| |
llvm-svn: 221505
|
| |
|
|
|
|
| |
Because LLD on that platform can't demangle symbols.
llvm-svn: 221504
|
| |
|
|
| |
llvm-svn: 221503
|
| |
|
|
| |
llvm-svn: 221502
|
| |
|
|
|
|
|
|
|
|
| |
A pointer's pointee might not be sized: the pointee could be a function.
Report this as IK_NoInduction when calculating isInductionVariable.
This fixes PR21508.
llvm-svn: 221501
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If /subsystem option is not given, the linker needs to infer the
subsystem based on the entry point symbol. If it fails to infer
that, the linker should error out on it.
LLD was almost correct, but it would fail to infer the subsystem
if the entry point is specified with /entry. This is because the
subsystem inference was coupled with the entry point function
searching (if no entry point name is specified, the linker needs
to find the right entry name).
This patch makes the subsystem inference an independent pass to
fix the issue. Now, as long as an entry point function is defined,
LLD can infer the subsystem no matter how it resolved the entry
point.
I don't think scanning all the defined symbols is fast, although
it shouldn't be that slow. The file class there does not provide
any easy way to find an atom by name, so this is what we can do
at this moment. I'd like to revisit this later to make it more
efficient.
llvm-svn: 221499
|
| |
|
|
|
|
|
| |
Comparing the result of a cmpxchg instruction can be replaced with an
extractvalue of the cmpxchg success indicator.
llvm-svn: 221498
|
| |
|
|
| |
llvm-svn: 221497
|
| |
|
|
|
|
|
|
|
|
| |
Fixes include:
- dont set or change LDFLAGS, but set LD_EXTRAS instead
- fix compilation errors for iOS based builds with objective C code
- fix test cases to create classes instead of relying on classes from AppKit
- rename things where it makes sense
llvm-svn: 221496
|
| |
|
|
| |
llvm-svn: 221495
|
| |
|
|
|
|
| |
be run remotely via lldb-platform.
llvm-svn: 221494
|
| |
|
|
|
|
|
|
| |
golden output, use the process STDOUT instead.
This helps this test be able to be run remotely.
llvm-svn: 221493
|
| |
|
|
|
|
| |
when getting the SDK path and use xcrun to find the SDK path.
llvm-svn: 221492
|
| |
|
|
|
|
|
|
| |
The ELF symbol `st_other` field might contain additional flags besides
visibility ones. This patch implements support for some MIPS specific
flags.
llvm-svn: 221491
|
| |
|
|
| |
llvm-svn: 221490
|
| |
|
|
|
|
|
|
|
|
|
|
| |
cvttpd2dq)
Fixed an issue with the (v)cvttps2dq and (v)cvttpd2dq instructions being incorrectly put in the 2 source operand folding tables instead of the 1 source operand and added the missing SSE/AVX versions.
Also added missing (v)cvtps2dq and (v)cvtpd2dq instructions to the folding tables.
Differential Revision: http://reviews.llvm.org/D6001
llvm-svn: 221489
|
| |
|
|
|
|
| |
Also add tests for vfmadd/vfmsub.
llvm-svn: 221488
|
| |
|
|
|
|
| |
Also reuse the fma4 intrinsic test to cover fma3 instructions too.
llvm-svn: 221487
|
| |
|
|
|
|
| |
take on the additional TypeSummaryOptions argument. It is still not used for anything, but it is now there. Adding support for this extra argument to Python formatters will follow suit
llvm-svn: 221486
|
| |
|
|
|
|
|
| |
mingw lies about the size of a function's AuxFunctionDefinition. Ignore
the field and rely on our heuristic to determine the symbol's size.
llvm-svn: 221485
|
| |
|
|
|
|
| |
While there, remove useless comments.
llvm-svn: 221484
|
| |
|
|
| |
llvm-svn: 221483
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
down to individual summary formatters to alter their behavior in a formatter-dependent way
Two flags are introduced:
- preferred display language (as in, ObjC vs. C++)
- summary capping (as in, should a limit be put to the amount of data retrieved)
The meaning - if any - of these options is for individual formatters to establish
The topic of a subsequent commit will be to actually wire these through to individual data formatters
llvm-svn: 221482
|
| |
|
|
|
|
|
| |
... instead of a DIScope that might wrap something that's not actually
a DIScope (eg. a DIGlobalVariable);
llvm-svn: 221481
|
| |
|
|
|
|
|
|
| |
The variable is private, so the name should not be relied on. Also, the
linker uses the sections, so asan should too when trying to avoid causing
the linker problems.
llvm-svn: 221480
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We introduces a new flag -polly-parallel and use it to annotate the for-nodes in
the isl ast that we want to execute thread parallel (e.g., using OpenMP). We
previously already emmitted openmp annotations, but we did this for various
kinds of parallel loops, including some which we can not run in parallel.
With this patch we now have three annotations:
1) #pragma known-parallel [reduction]
2) #pragma omp for
3) #pragma simd
meaning:
1) loop has no loop carried dependences
2) loop will be executed thread-parallel
3) loop can possibly be vectorized
This patch introduces 1) and reduces the use of 2) to only the cases where we
will actually generate thread parallel code.
It is in preparation of openmp code generation in our isl backend.
Legacy:
- We also have a command line option -enable-polly-openmp. This option controls
the OpenMP code generation in CLooG. It will become an alias of
-polly-parallel after the CLooG code generation has been dropped.
http://reviews.llvm.org/D6142
llvm-svn: 221479
|
| |
|
|
| |
llvm-svn: 221478
|
| |
|
|
|
|
|
|
| |
The darwin linker has two ways to force all members of an archive to be loaded.
The -all_load option applies to all static libraries. The -force_load takes
a path to a library and just that library's members are force loaded.
llvm-svn: 221477
|
| |
|
|
|
|
|
|
| |
protocols.
<rdar://problem/18883778>
llvm-svn: 221476
|
| |
|
|
|
|
|
| |
This test case was never actually testing the trivial spiller: the -spiller
option has not been hooked up for a while now.
llvm-svn: 221475
|
| |
|
|
| |
llvm-svn: 221474
|
| |
|
|
|
|
|
|
|
| |
code. Same basic change that was done in r218429 for ARM code.
Where the ARM thumb symbolizer in llvm-objdump’s Mach-O disassembler is now
plumbed in with r221470 from the llvm trunk.
llvm-svn: 221473
|
| |
|
|
| |
llvm-svn: 221472
|
| |
|
|
| |
llvm-svn: 221471
|
| |
|
|
|
|
|
|
|
|
|
|
| |
add the code and test cases for 32-bit ARM symbolizer.
Also fixed the printing of data in code as it was not using the table correctly
and needed to fix one of the test cases too.
This will break lld’s test/mach-o/arm-interworking-movw.yaml till the tweak
for that is made. Which I’ll be committing immediately after this commit.
llvm-svn: 221470
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This flag can be used to specify the format of stack frames - user
can now provide a string with placeholders, which should be printed
for each stack frame with placeholders replaced with actual data.
For example "%p" will be replaced by PC, "%s" will be replaced by
the source file name etc.
"DEFAULT" value enforces default stack trace format currently used in
all the sanitizers except TSan.
This change also implements __sanitizer_print_stack_trace interface
function in TSan.
llvm-svn: 221469
|
| |
|
|
|
|
|
|
| |
floating point instead of something that can't to avoid test suite failures on different devices and architectures.
<rdar://problem/18826900>
llvm-svn: 221468
|
| |
|
|
| |
llvm-svn: 221467
|
| |
|
|
|
|
|
|
|
|
| |
DIDescriptor.
Imported declarations can be DIGlobalVariables which aren't a DIScope. Today
clang (unknowingly I believe) shoehorns these into a DIScope and it all works
just because we never access the fields.
llvm-svn: 221466
|
| |
|
|
| |
llvm-svn: 221465
|
| |
|
|
|
|
|
|
|
| |
* Remove unnecessary const_casts and C-style casts
* Simplify attribute access code
* Simplify ArrayRef creation
* 80-col and clang-format
llvm-svn: 221464
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
It isn't used anymore.
Depends on D6081
Reviewers: vmedic
Reviewed By: vmedic
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D6083
llvm-svn: 221463
|
| |
|
|
|
|
|
|
|
| |
instructions. Inlining might cause such cases and it's not valid to
reassociate floating-point instructions without the unsafe algebra flag.
Patch by Mehdi Amini <mehdi_amini@apple.com>!
llvm-svn: 221462
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CCState::AnalyzeFormalArguments()
Summary:
As with returns, we must be able to identify f128 arguments despite them
being lowered away. We do this with a pre-analyze step that builds a
vector and then we use this vector from the tablegen-erated code.
Reviewers: vmedic
Reviewed By: vmedic
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D6081
llvm-svn: 221461
|
| |
|
|
| |
llvm-svn: 221460
|
| |
|
|
| |
llvm-svn: 221459
|
| |
|
|
|
|
|
|
|
|
| |
This CPU definition is redundant. The Cortex-A9 is defined as
supporting multiprocessing extensions. Remove references to this CPU.
This CPU was recently removed from LLVM. See http://reviews.llvm.org/D6057
Change-Id: I62ae7cc656fcae54fbaefc4b6976e77e694a8678
llvm-svn: 221458
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
for both PPC64 Big and Little endian modes, so also eliminates the need for
the BIG_ENDIAN/LITTLE_ENDIAN #ifdeffery.
By trial and error, it also looks like the kPPC64_ShadowOffset64 value is
valid using (1ULL << 41) for both BE and LE, so that #if/#elif/#endif block
has also been simplified.
Differential Revision: http://reviews.llvm.org/D6044
llvm-svn: 221457
|