| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
| |
Now that llgs supports communicating the 0-port choose-a-port
mechanism and can communicate that back to a caller via the
--named-pipe option (at parity with debugserver), we use this
mechanism to always start llgs and debugserver gdb-remote
protocol tests without needing to use some port arbitration
mechanism. This eliminates some potential intermittent failures vs. the
previous random port and collision-avoidance strategy used.
llvm-svn: 212923
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This crash was pretty common while compiling Rust for iOS (armv7). Reason -
SjLj preparation step was lowering aggregate arguments as ExtractValue +
InsertValue. ExtractValue has assertion which checks that there is some data in
value, which is not true in case of empty (no fields) structures. Rust uses
them quite extensively so this patch uses a 'select true, %val, undef'
instruction to lower the argument.
Patch by Valerii Hiora.
llvm-svn: 212922
|
| |
|
|
|
|
| |
as well, when target names or "nativecodegen" are specified.
llvm-svn: 212921
|
| |
|
|
| |
llvm-svn: 212920
|
| |
|
|
| |
llvm-svn: 212919
|
| |
|
|
|
|
| |
referenced.
llvm-svn: 212918
|
| |
|
|
| |
llvm-svn: 212917
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
a function pointer is neither better nor worse than binding a function lvalue
to a function rvalue reference. Don't get confused and think that both bindings
are binding to a function lvalue (which would make the lvalue form win); the
const reference is binding to an rvalue.
The "real" bug in PR20218 is still present: we're getting the wrong answer from
template argument deduction, and that's what leads us to this weird overload
set.
llvm-svn: 212916
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
trying to fold shuffles.
Verify that DAGCombiner does not crash when trying to fold a pair of shuffles
according to rule (added at r212539):
(shuffle (shuffle A, Undef, M0), Undef, M1) -> (shuffle A, Undef, M2)
The DAGCombiner avoids folding shuffles if the resulting shuffle dag node
is not legal for the target. That means, the resulting shuffle must have
legal type and legal mask.
Before, the DAGCombiner only called method
'TargetLowering::isShuffleMaskLegal' to check if it was "safe" to fold according
to the above-mentioned rule. However, this caused a crash in the x86 backend
since method 'isShuffleMaskLegal' always expects to be called on a
legal vector type.
llvm-svn: 212915
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the first of a number of changes designed to generalise
MCWin64EHInstruction to support different target architectures. An ordered set
(vector) of these instructions is saved per frame to permit the emission of
information for Windows NT style unwinding. The only bit of information which
is actually target specific here is the Opcode for the unwinding bytecode. The
remainder of the information is simply generic information that is relevant to
the Windows NT unwinding model.
Remove the accessors for the fields, making them const and public instead. Sink
the knowledge of the alias'ed name into the single source and sink a single-use
check method into the use.
llvm-svn: 212914
|
| |
|
|
|
|
|
| |
Introduce const-ness on parameters, they are used as read-only and should not be
modified. NFC.
llvm-svn: 212913
|
| |
|
|
|
|
|
|
| |
Rename member variables and functions for the MCStreamer for DWARF-like
unwinding management. Rename the Windows ones as well and make the naming and
handling similar across the two. No functional change intended.
llvm-svn: 212912
|
| |
|
|
| |
llvm-svn: 212911
|
| |
|
|
| |
llvm-svn: 212910
|
| |
|
|
| |
llvm-svn: 212909
|
| |
|
|
|
|
| |
obj2yaml and yaml2obj tools.
llvm-svn: 212908
|
| |
|
|
|
|
| |
Loadable modules could be enabled without BUILD_SHARED_LIBS with tweaks in future.
llvm-svn: 212907
|
| |
|
|
|
|
| |
PrintFunctionNames and SampleAnalyzerPlugin, for Win32.DLL.
llvm-svn: 212906
|
| |
|
|
| |
llvm-svn: 212905
|
| |
|
|
|
|
| |
BugpointPasses, on Win32.
llvm-svn: 212904
|
| |
|
|
|
|
|
|
|
|
| |
LIBRARY_OUTPUT_DIRECTORY.
On Win32.DLL, it points not lib but bin.
LIBRARY_OUTPUT_DIRECTORY affects add_library(MODULE), especially Win32.DLL.
llvm-svn: 212903
|
| |
|
|
|
|
|
| |
couldn't be reopened on Win32.
FIXME: We may have an option in openFileForWrite(), not to use ResultFD but to close it.
llvm-svn: 212902
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we would have a private backing variable and an internal
alias pointing at it.
However, -fdata-sections only fires if a global variable has non-private
linkage. This means that an unreferenced vftable wouldn't get
discarded, bloating the object file.
Instead, stick the backing variable in a comdat even if the alias has
internal linkage. This will allow the linker to drop the vftable if it
is unused.
llvm-svn: 212901
|
| |
|
|
|
|
|
|
|
|
| |
Our verifier check for checking if a global has local linkage was too
strict. Forbid private linkage but permit local linkage.
Object file formats permit this and forbidding it prevents elimination
of unused, internal, vftables under the MSVC ABI.
llvm-svn: 212900
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
MC was aping a binutils bug where aliases would default their linkage to
private instead of internal.
I've sent a patch to the binutils maintainers and they've recently
applied it to the GNU assembler sources.
This fixes PR20152.
Differential Revision: http://reviews.llvm.org/D4395
llvm-svn: 212899
|
| |
|
|
| |
llvm-svn: 212898
|
| |
|
|
| |
llvm-svn: 212897
|
| |
|
|
| |
llvm-svn: 212896
|
| |
|
|
|
|
|
| |
Re-run tests changed in r211110 to test both paths.
Also fix broken check line.
llvm-svn: 212895
|
| |
|
|
|
|
|
| |
The unpromoted path still needs to be tested since we can't
always promote to using LDS.
llvm-svn: 212894
|
| |
|
|
|
|
|
| |
This can make writing some tests harder, so add a flag
to disable it.
llvm-svn: 212893
|
| |
|
|
| |
llvm-svn: 212892
|
| |
|
|
|
|
|
|
| |
This adds the ARM ACLE hint intrinsic wrappers to arm_acle.h. These need to be
protected with a !defined(_MSC_VER) since MSVC (and thus clang in compatibility
mode) provide these wrappers as proper builtin intrinsics.
llvm-svn: 212891
|
| |
|
|
|
|
|
| |
This adds support for the ACLE hint intrinsics on AArch64 similar to ARM. This
is required to properly support ACLE on AArch64.
llvm-svn: 212890
|
| |
|
|
| |
llvm-svn: 212889
|
| |
|
|
| |
llvm-svn: 212888
|
| |
|
|
|
|
| |
Include section number in ARM ACLE specification for easier navigation.
llvm-svn: 212887
|
| |
|
|
| |
llvm-svn: 212886
|
| |
|
|
|
|
| |
Theoretically this should now work for MachineBasicBlocks.
llvm-svn: 212885
|
| |
|
|
|
|
| |
s_listen_thread had the wrong type.
llvm-svn: 212884
|
| |
|
|
|
|
|
|
|
|
|
| |
This adds a llvm.aarch64.hint intrinsic to mirror the llvm.arm.hint in order to
support the various hint intrinsic functions in the ACLE.
Add an optional pattern field that permits the subclass to specify the pattern
that matches the selection. The intrinsic pattern is set as mayLoad, mayStore,
so overload the value for the definition of the hint instruction.
llvm-svn: 212883
|
| |
|
|
|
|
|
|
|
| |
Due to the fact that the windows unwinding has the concept of chained frames, we
maintain a current frame info pointer that is adjusted on any push and pop of a
unwinding context. This just removes an unnecessary variable that was used to
mirror the DWARF unwinding code.
llvm-svn: 212882
|
| |
|
|
|
|
|
|
| |
This structure contains information related to the call frame used to generate
unwinding information. Rename this to reflect the future use to represent the
shared state between various architectures for WinCFI information.
llvm-svn: 212881
|
| |
|
|
|
|
| |
Recognize only flags which correspond to the current target.
llvm-svn: 212880
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the last flag sent by lldb-platform that was not accepted
by llgs and is accepted by debugserver.
Conditionalized out a bit more code in prep for Windows
support one day based on _WIN32 define.
Updated the lldb-gdbserver usage string to represent
recent updates to command line arguments (and some older
ones like --attach pid).
Implements https://github.com/tfiala/lldb/issues/37
llvm-svn: 212879
|
| |
|
|
|
|
|
|
|
|
| |
The testrun now completes successfully on my FreeBSD 11.0-CURRENT
laptop. There are some intermittent failures on the FreeBSD buildbot
still, which should be addressed in later commits.
llvm.org/pr20274
llvm-svn: 212878
|
| |
|
|
|
|
| |
llvm.org/pr20282
llvm-svn: 212877
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
check_clang_tidy_fix.sh.
Reviewers: sbenza, djasper
Reviewed By: djasper
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D4480
llvm-svn: 212876
|
| |
|
|
|
|
|
|
|
|
| |
not properly handle the case where the predecessor block was the entry block to
the function. The only in-tree client of this is JumpThreading, which worked
around the issue in its own code. This patch moves the solution into the helper
so that JumpThreading (and other clients) do not have to replicate the same fix
everywhere.
llvm-svn: 212875
|
| |
|
|
|
|
|
| |
As a follow-up to r212835, also add the LLVM nonnull function attribute when
__attribute__((returns_nonnull)) is provided.
llvm-svn: 212874
|