| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This manifested itself in lld since it meant that weak
symbols were not appearing in archive symbol tables.
Subscribers: jfb, dschuff, jgravelle-google, aheejin
Differential Revision: https://reviews.llvm.org/D38111
llvm-svn: 313838
|
|
|
|
| |
llvm-svn: 313837
|
|
|
|
| |
llvm-svn: 313836
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Fixes https://github.com/google/sanitizers/issues/858
Reviewers: eugenis, dvyukov
Subscribers: kubamracek, llvm-commits
Differential Revision: https://reviews.llvm.org/D38019
llvm-svn: 313835
|
|
|
|
|
|
| |
Fix (r313790) missing ulittle{}_t error on some buildbots.
llvm-svn: 313834
|
|
|
|
|
|
|
| |
Another fix-up for r313790. Big-endian hosts swapped byte order in
UTF16 words.
llvm-svn: 313833
|
|
|
|
|
|
|
| |
We were only including the thin archive members used via a lazy symbol
before.
llvm-svn: 313832
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Eliminate unnecessary instrumentation at __sanitizer_dtor_callback
call sites. Fixes https://github.com/google/sanitizers/issues/861.
Reviewers: eugenis, kcc
Reviewed By: eugenis
Subscribers: vitalybuka, llvm-commits, cfe-commits, hiraditya
Differential Revision: https://reviews.llvm.org/D38063
llvm-svn: 313831
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The documentation refers to a boolean that controls whether response files are
handled, but this is incorrect. Since r165535, response files are always
enabled.
Reviewers: compnerd, rafael
Reviewed By: compnerd
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D38095
llvm-svn: 313830
|
|
|
|
|
|
|
|
|
|
| |
I noticed this inefficiency while investigating PR34603:
https://bugs.llvm.org/show_bug.cgi?id=34603
This fix will likely push another bug (we don't maintain state of 'LateSimplifyCFG')
into hiding, but I'll try to clean that up with a follow-up patch anyway.
llvm-svn: 313829
|
|
|
|
|
|
|
|
|
|
| |
__interface types are allowed in MSVC to have "property" data members
(marked with declspec property). This patch alters Sema to allow property
data members.
Differential Revision: https://reviews.llvm.org/D38092
llvm-svn: 313828
|
|
|
|
|
|
|
|
| |
variable templates.
This implements the proposed approach in https://github.com/itanium-cxx-abi/cxx-abi/issues/33
llvm-svn: 313827
|
|
|
|
| |
llvm-svn: 313826
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This implements the design discussed on llvm-dev for better tracking of
variables that live in memory through optimizations:
http://lists.llvm.org/pipermail/llvm-dev/2017-September/117222.html
This is tracked as PR34136
llvm.dbg.addr is intended to be produced and used in almost precisely
the same way as llvm.dbg.declare is today, with the exception that it is
control-dependent. That means that dbg.addr should always have a
position in the instruction stream, and it will allow passes that
optimize memory operations on local variables to insert llvm.dbg.value
calls to reflect deleted stores. See SourceLevelDebugging.rst for more
details.
The main drawback to generating DBG_VALUE machine instrs is that they
usually cause LLVM to emit a location list for DW_AT_location. The next
step will be to teach DwarfDebug.cpp how to recognize more DBG_VALUE
ranges as not needing a location list, and possibly start setting
DW_AT_start_offset for variables whose lifetimes begin mid-scope.
Reviewers: aprantl, dblaikie, probinson
Subscribers: eraman, hiraditya, llvm-commits
Differential Revision: https://reviews.llvm.org/D37768
llvm-svn: 313825
|
|
|
|
| |
llvm-svn: 313824
|
|
|
|
|
|
| |
warnings; other minor fixes (NFC).
llvm-svn: 313823
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit SVN r313668. The original test case attempted to
write a pointer value into 16-bits, although the value may exceed the
range representable in 16-bits. Ensure that the symbol is located in
the address space such that its absolute address is representable in
16-bits. This should fix the assertion failure that was seen on the
Windows hosts.
llvm-svn: 313822
|
|
|
|
| |
llvm-svn: 313821
|
|
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D38090
llvm-svn: 313820
|
|
|
|
|
|
|
|
| |
We already did (X & C2) > C1 --> (X & C2) != 0, if any bit set in (X & C2) will produce a result greater than C1. But there is an equivalent inverse condition with <= C1 (which will be canonicalized to < C1+1)
Differential Revision: https://reviews.llvm.org/D38065
llvm-svn: 313819
|
|
|
|
| |
llvm-svn: 313818
|
|
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D38096
llvm-svn: 313817
|
|
|
|
|
|
|
| |
Fix-up for r313790. Some buildbots couldn't convert size_t to
uint{}_t; do it manually.
llvm-svn: 313816
|
|
|
|
|
|
| |
of negative value
llvm-svn: 313815
|
|
|
|
| |
llvm-svn: 313814
|
|
|
|
|
|
|
|
|
|
|
| |
The Swift CC is identical to Win64 CC with the exception of swift error
being passed in r12 which is a CSR. However, since this calling
convention is only used in swift -> swift code, it does not impact
interoperability and can be treated entirely as Win64 CC. We would
previously incorrectly lower the frame setup as we did not treat the
frame as conforming to Win64 specifications.
llvm-svn: 313813
|
|
|
|
|
|
|
|
|
| |
These write to the low and high half of the destination
register and leave the other 16-bits unchanged. This is true
for most 16-bit instructions on gfx9, but we don't use that
now.
llvm-svn: 313812
|
|
|
|
|
|
|
| |
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewed-by: Aaron Watry <awatry@gmail.com>
Tested-by: Aaron Watry <awatry@gmail.com>
llvm-svn: 313811
|
|
|
|
|
|
|
| |
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewed-by: Aaron Watry <awatry@gmail.com>
Tested-by: Aaron Watry <awatry@gmail.com>
llvm-svn: 313810
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Resubmission of D37937. Fixed i386 target building (conversion from std::size_t& to uint64_t& failed). Fixed documentation warning failure about docs/CFIVerify.rst not being in the tree.
Reviewers: vlad.tsyrklevich
Reviewed By: vlad.tsyrklevich
Patch by Mitch Phillips
Subscribers: sbc100, mgorny, pcc, llvm-commits, kcc
Differential Revision: https://reviews.llvm.org/D38089
llvm-svn: 313809
|
|
|
|
|
|
| |
deprecated.
llvm-svn: 313808
|
|
|
|
|
|
|
| |
The problems on the bots appear to be resolved and this was
determined to not be the culprit. Removing this.
llvm-svn: 313807
|
|
|
|
|
|
|
|
| |
Also add some tests that should be able to use v_mad_mixhi_f16,
but do not yet. This is trickier because we don't really model
the partial update of the register done by 16-bit instructions.
llvm-svn: 313806
|
|
|
|
|
|
|
| |
Need to check for variables re-declarations when checking that the
variable was already captured in the captured region.
llvm-svn: 313805
|
|
|
|
|
|
| |
This reverts commit r313798, it's causing buildbot failures.
llvm-svn: 313804
|
|
|
|
| |
llvm-svn: 313803
|
|
|
|
| |
llvm-svn: 313802
|
|
|
|
|
|
|
| |
Caused by invalid order of members in ClangdServer.
DiagnosticsMutex was used after destruction.
llvm-svn: 313801
|
|
|
|
|
|
|
|
|
| |
This patch goes back to considering ForceAbsolute in moveAbsRight, but
only if the second argument is not already absolute.
With this we can handle "foo + ABSOLUTE(foo)" and "ABSOLUTE(foo) + foo".
llvm-svn: 313800
|
|
|
|
| |
llvm-svn: 313799
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Resubmission of D37937. Fixed i386 target building (conversion from std::size_t& to uint64_t& failed). Fixed documentation warning failure about docs/CFIVerify.rst not being in the tree.
Reviewers: vlad.tsyrklevich
Reviewed By: vlad.tsyrklevich
Patch by Mitch Phillips
Subscribers: mgorny, pcc, llvm-commits, kcc
Differential Revision: https://reviews.llvm.org/D38089
llvm-svn: 313798
|
|
|
|
| |
llvm-svn: 313797
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
fluctuating BOM presence)
This patch fixes broken preamble-skipping when the preamble region includes a byte order mark (BOM). Previously, parsing would fail if preamble PCH generation was enabled and a BOM was present.
This also fixes preamble invalidation when a BOM appears or disappears. This may seem to be an obscure edge case, but it happens regularly with IDEs that pass buffer overrides that never (or always) have a BOM, yet the underlying file from the initial parse that generated a PCH might (or might not) have a BOM.
I've included a test case for these scenarios.
Differential Revision: https://reviews.llvm.org/D37491
llvm-svn: 313796
|
|
|
|
|
|
|
|
|
| |
Add adds support for naming data segments. This is useful
useful linkers so that they can merge similar sections.
Differential Revision: https://reviews.llvm.org/D37886
llvm-svn: 313795
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The idea of this function is to simplify the implementation of binary
operators like add.
A value might be absolute because of an ABSOLUTE expression, but it
still depends on the value of a section and we might not be able to
evaluate it early. We should keep such values on the LHS, so that we
can delay the evaluation.
We can now handle both "1 + ABSOLUTE(foo)" and "ABSOLUTE(foo) + 1".
llvm-svn: 313794
|
|
|
|
| |
llvm-svn: 313793
|
|
|
|
|
|
| |
trailing zero count to do a comparison. NFCI
llvm-svn: 313792
|
|
|
|
|
|
|
|
|
|
| |
Add support for passing SwiftError through a register on the Windows x64
calling convention. This allows the use of swifterror attributes on
parameters which is used by the swift front end for the `Error`
parameter. This partially enables building the swift standard library
for Windows x86_64.
llvm-svn: 313791
|
|
|
|
|
|
|
|
|
|
| |
This enables readobj to output Windows resource files (.res). This way,
we'll be able to test .res outputs without comparing them byte-by-byte
with "magic binary files" generated by MS toolchain.
Differential Revision: https://reviews.llvm.org/D38058
llvm-svn: 313790
|
|
|
|
|
|
| |
__independent_bits_engine) as const, since they make no changes to the object. NFC.
llvm-svn: 313789
|