- Sep 30, 2020
-
-
Georgii Rymar authored
[llvm-readobj][ARM] - Improve support of printing unwind (-u) information for non-relocatable objects. This is the one more patch for https://bugs.llvm.org/show_bug.cgi?id=47581 It fixes how we print an information for the Generic model. With this patch we are able to read values from `.ARM.extab` and dump proper personality routines names/addresses. Differential revision: https://reviews.llvm.org/D88478
-
Frederik Gossen authored
Differential Revision: https://reviews.llvm.org/D88168
-
Sam Parker authored
Make a helper function that wraps around RDA::isSafeToRemove and utilises the existing DCE IT block checks.
-
Sam McCall authored
Differential Revision: https://reviews.llvm.org/D88489
-
Sam McCall authored
In preparation for making moving TweakFilter from ClangdServer::Options to a ClangdLSPServer option, and letting it vary per-request. (In order to implement CodeActionParams.only) Also a general overdue cleanup. Differential Revision: https://reviews.llvm.org/D88470
-
Sam Parker authored
-
Sam Parker authored
So forwards is forwards and backwards is reverse. Also add a check so that we know the instructions are in the expected order. Differential Revision: https://reviews.llvm.org/D88419
-
Sam Parker authored
Just because we haven't encountered an instruction setting the VPR, it doesn't mean we can't create a VPT block - the VPR maybe a live-in. Differential Revision: https://reviews.llvm.org/D88224
-
Jonas Devlieghere authored
Rather than relaying on CMake to substitute the full path to the lldb source root, use the value set in config.lldb_src_root. This makes it slightly easier to write a custom lit.site.cfg.py.
-
Serge Pavlov authored
This test is going to be removed because using dynamic rounding mode in initializers is changing. It also causes build failures in some cases, so remove it now.
-
Scott Todd authored
Since https://reviews.llvm.org/D78522, Symbol is not a Trait itself. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D88512
-
Arthur Eubanks authored
-
Brad Smith authored
-
Amara Emerson authored
During lowering of G_UMULO and friends, the previous code moved the builder's insertion point to be after the legalizing instruction. When that happened, if there happened to be a "G_CONSTANT i32 0" immediately after, the CSEMIRBuilder would try to find that constant during the buildConstant(zero) call, and since it dominates itself would return the iterator unchanged, even though the def of the constant was *after* the current insertion point. This resulted in the compare being generated *before* the constant which it was using. There's no need to modify the insertion point before building the mul-hi or constant. Delaying moving the insert point ensures those are built/CSEd before the G_ICMP is built. Fixes PR47679 Differential Revision: https://reviews.llvm.org/D88514
-
Craig Topper authored
These instructions are implemented with two port 5 uops and one port 015 uop so they are more complicated that most shuffles. This patch increases the depth threshold for when we form them during shuffle combining to try to limit increasing the number of uops especially on port 5. Differential Revision: https://reviews.llvm.org/D88503
-
Hubert Tong authored
This patch improves the assembly output produced for string literals by using character literals in byte lists. This provides the benefits of having printable characters appear as such in the assembly output and of having strings kept as logical units on the same line. Reviewed By: daltenty Differential Revision: https://reviews.llvm.org/D80953
-
Evandro Menezes authored
Use the ISA extensions for specific processors in the conventional canonical order.
-
Yaxun (Sam) Liu authored
-
Vedant Kumar authored
-
Jonas Devlieghere authored
Give the trace directory argument its own variable (LLDB_TEST_TRACE_DIRECTORY) so that we can configure it in lit.site.cfg.py if we so desire.
-
Richard Smith authored
- Make the consteval constructor for the zero type be noexcept - Don't expect three-way comparison of 0 against a comparison category to fail
-
Vitaly Buka authored
llvm.fabs does not need a special handler as llvm.abs as its single argument type match the return type.
-
Vitaly Buka authored
-
Vedant Kumar authored
-
Amy Huang authored
Add class types to the retained types list to make sure they don't get dropped if the constructor is optimized out later. Differential Revision: https://reviews.llvm.org/D88522
-
John McCall authored
- Fix a memory leak accidentally introduced yesterday by using CodeGen's existing mangling context instead of creating a new context afresh. - Move GNU-runtime ObjC method mangling into the AST mangler; this will eventually be necessary to support direct methods there, but is also just the right architecture. - Make the Apple-runtime method mangling work properly when given an interface declaration, fixing a bug (which had solidified into a test) where mangling a category method from the interface could cause it to be mangled as if the category name was a class name. (Category names are namespaced within their class and have no global meaning.) - Fix a code cross-reference in dsymutil. Based on a patch by Ellis Hoag.
-
Jacques Pienaar authored
NFC. Some small changes to make things more consistent but primarily avoiding old behavior without any further change.
-
Vedant Kumar authored
Lifetime marker intrinsics support any pointer type, so CodeExtractor does not need to bitcast to `i8*` in order to use these markers.
-
Richard Smith authored
This causes a build break under -Werror=format.
-
Stanislav Mekhanoshin authored
It turns to be not needed anymore. Differential Revision: https://reviews.llvm.org/D88520
-
Richard Smith authored
This happens in glibc's headers. It's important that we recognize these functions so that we can mark them as returns_twice. Differential Revision: https://reviews.llvm.org/D88518
-
Richard Smith authored
* Use an empty struct instead of a member pointer to represent this type, so that we don't actually pass a zero member pointer at runtime. * Mark the constructor as consteval to ensure that no code is emitted for it whenever possible. * Add a honeypot constructor to reject all non-int arguments, so that the only argument that can arrive at the real constructor is the literal 0. This results in better generated code, and rejecting invalid comparisons against nullptr, 0L, and so on, while also rejecting invalid comparisons against (1-1) and similar that would be allowed if we required an integer constant expression with value 0. Differential Revision: https://reviews.llvm.org/D85051
-
JonChesterfield authored
[nfc][libomptarget] Drop parameter to named_sync named_sync has one call site (in sync.cu) where it always passed L1_BARRIER. Folding this into the call site and dropping the macro is a simplification. amdgpu doesn't have ptx' bar.sync instruction. A correct implementation of __kmpc_impl_named_sync in terms of shared memory is much easier if it can assume that the barrier argument is this constant. Said implementation is left for a second patch. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D88474
-
Michael Kruse authored
The flags F_OK, R_OK and W_OK are defined in unistd.h, which does not exist under the Windows platform. Windows still defines the `access` function. Its access flags are documented at https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/access-waccess. For compatibility, define the flags F_OK, R_OK and W_OK using these constants. This patch is part of the series to make flang compilable with MS Visual Studio <http://lists.llvm.org/pipermail/flang-dev/2020-July/000448.html>. Reviewed By: klausler Differential Revision: https://reviews.llvm.org/D88508
-
Michael Kruse authored
The custom implementation of UnsignedInt128 has an implicit conversion operator to unit64_t, but not int64_t. Considering that the former is already truncating, and C++ implicitly converts uint64_t to int64_t, UnsignedInt128 should also support an implicit conversion to int64_t. An analogous conversion would be from uint32_t to int16_t. Without the conversion operator overload, the msvc emits the following error: ``` descriptor-io.h(44): error C2440: 'static_cast': cannot convert from 'A' to 'int64_t' with [ A=Fortran::common::uint128_t ] ``` This patch is part of the series to make flang compilable with MS Visual Studio <http://lists.llvm.org/pipermail/flang-dev/2020-July/000448.html>. Reviewed By: klausler Differential Revision: https://reviews.llvm.org/D88509 -
Cameron McInally authored
Differential Revision: https://reviews.llvm.org/D88444
-
Eric Astor authored
@feat.00 is a bitfield read by Microsoft-style linkers, and is required to signal (e.g.) /safeseh support on 32-bit systems. Reviewed By: rnk Differential Revision: https://reviews.llvm.org/D88451
-
Eric Astor authored
MASM allows arbitrary whitespace around the Intel dot operator, especially when used for struct field lookup Reviewed By: rnk Differential Revision: https://reviews.llvm.org/D88450
-
Eric Astor authored
Support the "alias" directive. Required support for emitWeakReference in MCWinCOFFStreamer. Reviewed By: thakis Differential Revision: https://reviews.llvm.org/D87403
-
Eric Astor authored
Add MASM support for 80-bit reals in the x87 extended precision format. Reviewed By: thakis Differential Revision: https://reviews.llvm.org/D87402
-