- Jun 06, 2020
-
-
LLVM GN Syncbot authored
-
Jessica Paquette authored
Since all of the other G_SHUFFLE_VECTOR transforms are going there, let's do this with dup as well. This is nice, because it lets us split up the original code into matching, register bank selection, and instruction selection. - Create G_DUP, make it equivalent to AArch64dup - Add a post-legalizer combine which is 90% a copy-and-paste from tryOptVectorDup, except with shuffle matching closer to what SelectionDAG does in `ShuffleVectorSDNode::isSplatMask`. - Teach RegBankSelect about G_DUP. Since dup selection relies on the correct register bank for FP/GPR dup selection, this is necessary. - Kill `tryOptVectorDup`, since it's now entirely handled by G_DUP. - Add testcases for the combine, RegBankSelect, and selection. The selection test gives the same selection results as the old test. Differential Revision: https://reviews.llvm.org/D81221
-
Diego Caballero authored
This patch is a follow-up on https://reviews.llvm.org/D81127 BF16 constants were represented as 64-bit floating point values due to the lack of support for BF16 in APFloat. APFloat was recently extended to support BF16 so this patch is fixing the BF16 constant representation to be 16-bit. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D81218
-
Yaxun (Sam) Liu authored
recommit 11d06b95 with fix for lit tests.
-
Diego Caballero authored
Bfloat type has an 8-bit exponent so the exponent of NaN/Inf numbers must be 0xff instead of 0x1f. This is probably a copy-paste mistake from the half float type. Reviewed By: lattner Differential Revision: https://reviews.llvm.org/D81302
-
Richard Smith authored
Summary: This transformation is correct for a builtin call to 'free(p)', but not for 'operator delete(p)'. There is no guarantee that a user replacement 'operator delete' has no effect when called on a null pointer. However, the principle behind the transformation *is* correct, and can be applied more broadly: a 'delete p' expression is permitted to unconditionally call 'operator delete(p)'. So do that in Clang under -Oz where possible. We do this whether or not 'p' has trivial destruction, since the destruction might turn out to be trivial after inlining, and even for a class-specific (but non-virtual, non-destroying, non-array) 'operator delete'. Reviewers: davide, dnsampaio, rjmccall Reviewed By: dnsampaio Subscribers: hiraditya, cfe-commits, llvm-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D79378
-
stevewan authored
Summary: This patch removes the special handling for Darwin on PowerPC in the default target cpu handling, because Darwin is no longer supported on the PowerPC platform. Reviewers: hubert.reinterpretcast, daltenty Reviewed By: hubert.reinterpretcast Subscribers: wuzish, nemanjai, shchenz, steven.zhang, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D81115
-
Philip Reames authored
-
Reid Kleckner authored
-
Reid Kleckner authored
This reverts commit 38f3ba59. Fix the XCOFF error handling. Unlike std::error_code, Error must be consumed or handled.
-
Fangrui Song authored
Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off builds after ebcbd5ba
-
Richard Smith authored
trivial. We previously took a shortcut by assuming that if a subobject had a trivial copy assignment operator (with a few side-conditions), we would always invoke it, and could avoid going through overload resolution. That turns out to not be correct in the presenve of ref-qualifiers (and also won't be the case for copy-assignments with requires-clauses either). Use the same logic for lazy declaration of copy-assignments that we use for all other special member functions. Previously committed as c57f8a3a. This now also includes an extension of LLDB's workaround for handling special members without the help of Sema to cover copy assignments.
-
Richard Smith authored
before marking it complete. No functionality change intended. Previously committed as c13dd74e.
-
Fangrui Song authored
Fixes PR46184 Report line 1 of the last memory buffer.
-
Alex Lorenz authored
Similar to ceb80161. Darwin doesn't always use compiler-rt, and so we can't assume that these functions are available on arm.
-
- Jun 05, 2020
-
-
Davide Italiano authored
-
Nicolas Vasilache authored
-
Dan Gohman authored
This patch addresses the review comments on r352930: - Removes redundant diagnostic checking code - Removes errnoneous use of diag::err_alias_is_definition, which turned out to be ineffective anyway since functions can be defined later in the translation unit and avoid detection. - Adds a test for various invalid cases for import_name and import_module. This reapplies D59520, with the addition of adding `InGroup<IgnoredAttributes>` to the new warnings, to fix the Misc/warning-flags.c failure. Differential Revision: https://reviews.llvm.org/D59520
-
Craig Topper authored
-
Nicolas Vasilache authored
-
Nikita Popov authored
Stores now always have an alignment.
-
Nikita Popov authored
Loads and stores always have an alignment now.
-
Marco Elver authored
Summary: Use a portable section name, as for the test's purpose any name will do. Reviewers: nickdesaulniers, thakis Reviewed By: thakis Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D81306
-
Nico Weber authored
This reverts commit 74bd9882. Breaks LLVM::section-headers.test everywhere, see e.g. http://lab.llvm.org:8011/builders/clang-x86_64-debian-fast/builds/29940/steps/test-check-all/logs/FAIL%3A%20LLVM%3A%3Asection-headers.test
-
Adrian Prantl authored
Since FindXcodeContentsDirectoryInPath expects the *.app/Contents and DEVELOPER_DIR is supposed to point to Xcode.app, we need to append the Contents path first. Differential Revision: https://reviews.llvm.org/D81290
-
Adrian Prantl authored
Differential Revision: https://reviews.llvm.org/D81289
-
Craig Topper authored
Similar to D81212. Differential Revision: https://reviews.llvm.org/D81292
-
Reid Kleckner authored
In my use case, this saved 100ms of time doing one-time-initialization for std::error_code().
-
Stanislav Mekhanoshin authored
Differential Revision: https://reviews.llvm.org/D80749
-
Reid Kleckner authored
Clang marks calls to operator new as heap allocation sites, but the operator declared at global scope returns a void pointer. There is no explicit cast in the code, so the compiler has to write down the allocated type itself. Also generalize a cast to use CallBase, so that we mark heap alloc sites when exceptions are enabled. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D80966
-
LLVM GN Syncbot authored
-
Stanislav Mekhanoshin authored
If an instruction is erased we also need to remove it from Visited set. There is a very small chance that an another newly created instruction will be created with the same pointer value in place of an erased one. Differential Revision: https://reviews.llvm.org/D80958
-
Yaxun (Sam) Liu authored
This reverts commit 11d06b95.
-
Yaxun (Sam) Liu authored
-
Saleem Abdulrasool authored
This merges the static and shared library and behaves as if `-search_paths_first` was specified which is also the default behaviour on ld64 (and now lld). Unify the paths, and use `llvm::sys::path` to deal with the path to be truly agnostic to the host.
-
Alexandre Ganea authored
Before this patch, llvm-pdbutil supported only --type-stats to dump stats about a PDB TPI stream. Adding --id-stats for completion.
-
Matt Arsenault authored
-
Adrian Prantl authored
instead of preferring the one chosen with xcode-select. <rdar://problem/64000666> Differential Revision: https://reviews.llvm.org/D81210
-
Adrian Prantl authored
These functions really don't belong into PlatformDarwin, since they actualy query state of the Host and not of the remote platform.
-
Matt Arsenault authored
Just computing the alignment makes sense without caring about the general known bits, such as for non-integral pointers. Separate the two and start calling into the TargetLowering hooks for frame indexes. Start calling the TargetLowering implementation for FrameIndexes, which improves the AMDGPU matching for stack addressing modes. Also introduce a new hook for returning known alignment of target instructions. For AMDGPU, it would be useful to report the known alignment implied by certain intrinsic calls. Also stop using MaybeAlign.
-