- Feb 03, 2021
-
-
Sven van Haastregt authored
Add the builtin functions brought by the cl_khr_subgroup_ballot extension to `-fdeclare-opencl-builtins`. Also add placeholder comments for the other Extended Subgroup Functions from the OpenCL Extension Specification. Add a comment clarifying the scope of the test. Differential Revision: https://reviews.llvm.org/D95523
-
Ben Shi authored
Reviewed By: dylanmckay, MaskRay Differential Revision: https://reviews.llvm.org/D93579
-
Sebastian Neubauer authored
This reverts commits 62af0305..677a3529 from D93708. They cause failures in the sanitizer builds because of uninitialized values. A fix is in D95878, but it might take some time until this is pushed, so reverting the changes for now.
-
Caroline Concatto authored
This patch adds a cost model for SK_Broadcast in AArch64TTIImpl::getShuffleCost with scalable vector. Without this patch, the scalable vector type relies on BasicTTIImpl cost implementation and assert. Differential Revision: https://reviews.llvm.org/D95598
-
Andre Vieira authored
This patch adds an optimized memcpy routine for AArch64 tuned and benchmarked on Neoverse-N1. Differential Revision: https://reviews.llvm.org/D92235
-
David Sherwood authored
This patch adds constructors to VPIteration as a cleaner way of initialising the struct and replaces existing constructions of the form: {Part, Lane} with VPIteration(Part, Lane) I have also added a default constructor, which is used by VPlan.cpp when deciding whether to replicate a block or not. This refactoring will be required in a later patch that adds more members and functions to VPIteration. Differential Revision: https://reviews.llvm.org/D95676 -
Wang, Pengfei authored
Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D95926
-
Sam McCall authored
-
Martin Storsjö authored
Differential Revision: https://reviews.llvm.org/D91172
-
Martin Storsjö authored
Differential Revision: https://reviews.llvm.org/D91171
-
Petr Hosek authored
C identifier name input sections such as __llvm_prf_* are GC roots so they cannot be discarded. In LLD, the SHF_LINK_ORDER flag overrides the C identifier name semantics. The !associated metadata may be attached to a global object declaration with a single argument that references another global object, and it gets lowered to SHF_LINK_ORDER flag. When a function symbol is discarded by the linker, setting up !associated metadata allows linker to discard counters, data and values associated with that function symbol. Note that !associated metadata is only supported by ELF, it does not have any effect on non-ELF targets. Differential Revision: https://reviews.llvm.org/D76802
-
Kazu Hirata authored
-
Kazu Hirata authored
-
Kazu Hirata authored
Identified with const-return-type.
-
LLVM GN Syncbot authored
-
Hsiangkai Wang authored
Use vle1.v/vse1.v to load/store vector mask types. Differential Revision: https://reviews.llvm.org/D93364
-
Pushpinder Singh authored
This patch adds AMDGPUOpenMPToolChain for supporting OpenMP offloading to AMD GPU's. Originally authored by Greg Rodgers Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D94961
-
Hsiangkai Wang authored
* Add new vector instructions in v0.10. - load/store for mask value vle1.v vse1.v - vsetivli for 0-31 immediate vector length. * Rename vector instructions in v0.10. - vfrsqrte7 -> vfrsqrt7 - vfrece7 -> vfrec7 * Reserve memory width encodings for EEW>128b. Differential Revision: https://reviews.llvm.org/D95781
-
Arthur Eubanks authored
With the new PM imminent, bugpoint will diverge from opt, meaning it may not reproduce a crash with the same arguments passed to opt. We need to specify alternatives to bugpoint for reducing crashes. I looked at the rest of the document to see if anything could be improved. Major highlights: * Run -Xclang -disable-llvm-passes instead of -O0 for skipping IR passes * Mention the files that clang dumps on a crash * Remove outdated reference to `delta` and plug `creduce` instead * Mention llvm-reduce on top of bugpoint * Mention --print-before-all --print-module-scope * Mention sanitizers in addition to valgrind * Mention opt-bisect for miscompiles Reviewed By: fhahn, MaskRay Differential Revision: https://reviews.llvm.org/D95578
-
Nathan James authored
-
Jianzhou Zhao authored
Reviewed-by: morehouse Differential Revision: https://reviews.llvm.org/D95883
-
Nathan James authored
`isParamInMainLikeFunction` didn't check if the function had an identifer name before calling getName() which could lead to an assert.
-
Serguei Katkov authored
FixupStatepoints pass does not take into account the undef use it skips may have a tied def. So when defs are handled pass considers that tied-use should be spilled and triggers an assert. FixupStatepoints should skip undef def as well. Reviewers: reames, dantrushin Reviewed By: dantrushin Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D95858
-
Yang Fan authored
MSVC warning: ``` \llvm-project\llvm\include\llvm\Transforms\IPO\SampleProfileProbe.h(65): warning C4305: 'initializing': truncation from 'double' to 'const float' ```
-
Yang Fan authored
MSVC warning: ``` \llvm-project\clang\lib\Format\BreakableToken.cpp(1002): warning C4804: '-': unsafe use of type 'bool' in operation ```
-
Fangrui Song authored
Differential Revision: https://reviews.llvm.org/D95661
-
Yang Fan authored
GCC warning: ``` In file included from /llvm-project/llvm/lib/Support/VirtualFileSystem.cpp:13: /llvm-project/llvm/include/llvm/Support/VirtualFileSystem.h: In static member function ‘static bool llvm::vfs::RedirectingFileSystem::RemapEntry::classof(const llvm::vfs::RedirectingFileSystem::Entry*)’: /llvm-project/llvm/include/llvm/Support/VirtualFileSystem.h:681:5: warning: control reaches end of non-void function [-Wreturn-type] 681 | } | ^ ``` -
Chen Zheng authored
Post commit comments address for D92071.
-
Med Ismail Bennani authored
It seems that recording fundamental return type is bogus. This can trigger asserts when running a test with reproducers so this patch updates the `SBTarget::IsLoaded` test to stop recording them. Differential Revision: https://reviews.llvm.org/D95686 Signed-off-by:
Med Ismail Bennani <medismail.bennani@gmail.com>
-
Matt Arsenault authored
We don't register i128 as a legal type with addRegisterClass, but it appears in the list of legal register types. This inconsistency resulted in the asm constraint lowering trying to use 2 128-bit registers for these operands. This would leave behind a dead def that would waste registers. Regresses GlobalISel tests for i128 load/store, but these aren't very important right now. Ideally these would not depend on the list of register types.
-
Matt Arsenault authored
This should only consider whether the pressure impact of the bundle at the given point in the program will decrease the occupancy. High VGPR pressure was incorrectly blocking the formation of scalar bundles, and vice versa. This was also blocking bundling from high pressure situations at other points in the program.
-
Jessica Paquette authored
If the G_BR + G_BRCOND in this combine use the same MBB, then it will infinite loop. Don't allow that to happen. Differential Revision: https://reviews.llvm.org/D95895
-
Siva Chandra authored
This change also introduces a new source layout for adding machine specific and generic implementations. To keep the scope of this change small, this new pattern is only applied for ceil, ceilf and ceill. Follow up changes will switch all math functions in to the new pattern. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D95850
-
Lei Zhang authored
We should be check whether lb + step >= ub to determine whether this is a single iteration. Previously we were checking lb + lb >= ub. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D95440
-
Diego Caballero authored
Add the conversion pattern for vector.bitcast to lower it to the LLVM Dialect. Reviewed By: ThomasRaoux, aartbik Differential Revision: https://reviews.llvm.org/D95579
-
Fangrui Song authored
cl::ZeroOrMore allows the option to be specified multiple times, which makes downstream projects possible to specify a default value in lit configuration while some tests can override the value.
-
peter klausler authored
Split up MeasureSizeInBytes() so that array element sizes can be calculated accurately; use the new API in some places where DynamicType::MeasureSizeInBytes() was being used but the new API performs better due to TypeAndShape having precise CHARACTER length information. Differential Revision: https://reviews.llvm.org/D95897
-
Arthur Eubanks authored
tut-simplify-cfg hasn't been ported to the new PM. llvm-lto2's -enable-new-pm defaults to the CMake flag, so the legacy PM extension test needs to be pinned. Reviewed By: MaskRay, ychen Differential Revision: https://reviews.llvm.org/D95898
-
LLVM GN Syncbot authored
-
Kyungwoo Lee authored
Second land attempt. MachineVerifier DefRegState expensive check errors fixed. Prologs and epilogs handle callee-save registers and tend to be irregular with different immediate offsets that are not often handled by the MachineOutliner. Commit D18619/a5335647 (combining stack operations) stretched irregularity further. This patch tries to emit homogeneous stores and loads with the same offset for prologs and epilogs respectively. We have observed that this canonicalizes (homogenizes) prologs and epilogs significantly and results in a greatly increased chance of outlining, resulting in a code size reduction. Despite the above results, there are still size wins to be had that the MachineOutliner does not provide due to the special handling X30/LR. To handle the LR case, his patch custom-outlines prologs and epilogs in place. It does this by doing the following: * Injects HOM_Prolog and HOM_Epilog pseudo instructions during a Prolog and Epilog Injection Pass. * Lowers and optimizes said pseudos in a AArchLowerHomogneousPrologEpilog Pass. * Outlined helpers are created on demand. Identical helpers are merged by the linker. * An opt-in flag is introduced to enable this feature. Another threshold flag is also introduced to control the aggressiveness of outlining for application's need. This reduced an average of 4% of code size on LLVM-TestSuite/CTMark targeting arm64/-Oz. Differential Revision: https://reviews.llvm.org/D76570
-