- Feb 03, 2021
-
-
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
-
Mitch Phillips authored
This reverts commit 9dc06762. Should not have been committed, was a bad rebase. Review still continuing on D94830.
-
Mitch Phillips authored
Unwinders (like libc's backtrace()) can call their own locks (like the libdl lock). We need to let the unwinder release the locks before forking. Wrap a new lock around the unwinder for atfork protection. Reviewed By: eugenis Differential Revision: https://reviews.llvm.org/D95889
-
Mitch Phillips authored
Adds a new allocation API to GWP-ASan that handles size+alignment restrictions. Differential Revision: https://reviews.llvm.org/D94830
-
Richard Smith authored
Previously we'd hit UB due to an invalid left shift operand. Also fix the WASM emitter to properly use SLEB128 encoding instead of ULEB128 encoding for signed fields so that negative numbers don't result in overly-large values that we can't read back any more. In passing, don't diagnose a non-canonical ULEB128 that fits in a uint64_t but has redundant trailing zero bytes. Reviewed By: dblaikie, aardappel Differential Revision: https://reviews.llvm.org/D95510
-
Jianzhou Zhao authored
DFSan uses TLS to pass metadata of arguments and return values. When an instrumented function accesses the TLS, if a signal callback happens, and the callback calls other instrumented functions with updating the same TLS, the TLS is in an inconsistent state after the callback ends. This may cause either under-tainting or over-tainting. This fix follows MSan's workaround. https://github.com/llvm/llvm-project/commit/cb22c67a21e4b5e1ade65141117a70be318be072 It simply resets TLS at restore. This prevents from over-tainting. Although under-tainting may still happen, a taint flow can be found eventually if we run a DFSan-instrumented program multiple times. The alternative option is saving the entire TLS. However the TLS storage takes 2k bytes, and signal calls could be nested. So it does not seem worth. This diff fixes sigaction. A following diff will be fixing signal. Reviewed-by: morehouse Differential Revision: https://reviews.llvm.org/D95642
-
Florian Hahn authored
We should be able to look through pointer casts that do not impact the value.
-
Martin Storsjö authored
Differential Revision: https://reviews.llvm.org/D91170
-
Martin Storsjö authored
Differential Revision: https://reviews.llvm.org/D91169
-
Louis Dionne authored
This will allow running back-deployment testing on macOS only on systems running the right version of macOS. For the time being, we're cheating because we don't have actual machines running older than 10.15.
-
Mehdi Amini authored
This reverts commit b7d80058. The mlir-windows buildbot is broken.
-
Reid Kleckner authored
Fixes usage of shared_ptr with CFI enabled, which is llvm.org/pr48993. Differential Revision: https://reviews.llvm.org/D95827
-