- Jul 02, 2020
-
-
Thomas Raoux authored
This allow lowering to support scf.for and scf.if with results. As right now spv region operations don't have return value the results are demoted to Function memory. We create one allocation per result right before the region and store the yield values in it. Then we can load back the value from allocation to be able to use the results. Differential Revision: https://reviews.llvm.org/D82246
-
Thomas Raoux authored
Move patterns for scf to spir-v ops in their own file/folder. Differential Revision: https://reviews.llvm.org/D82914
-
Tim Keith authored
flang/module only contains Fortran files and one is a .h so disable formatting on that directory. Differential Revision: https://reviews.llvm.org/D82989
-
Fangrui Song authored
atexit registered functions run earlier so `__attribute__((destructor))` annotated functions cannot be tracked. Set a priority of 100 (compatible with GCC 7 onwards) to track destructors and destructors whose priorities are greater than 100. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=7970 Reviewed By: calixte, marco-c Differential Revision: https://reviews.llvm.org/D82253
-
Douglas Yung authored
This reverts commit 79f6a814. Didn't notice that someone had reverted the commit that caused the problem.
-
Douglas Yung authored
This should fix the PS4 linux build bot: http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/70409
-
Nico Weber authored
-
Xun Li authored
Summary: D82928 generated unexpected tmp files in the CoverageMapping test directory. This patch cleans it up and remove the file in the test bots. It will be revered after a week. Reviewers: thakis Reviewed By: thakis Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D82992
-
Roman Lebedev authored
-
Matt Arsenault authored
This fixes extra copies when materializing constants in AGPRs. This made it a lot harder to trigger the spilling in spill-agpr.ll
-
Matt Arsenault authored
-
Matt Arsenault authored
I have no idea why this is considered optional, or why it's not the default. Also add uses of the copied registers for more useful liveness testing.
-
Stanislav Mekhanoshin authored
Allow only up to 1/4 of available VGPRs for the vectorization of any given alloca. Differential Revision: https://reviews.llvm.org/D82990
-
clementval authored
This reverts commit 7f1e7767.
-
Roman Lebedev authored
Much like 25521150, but with division instead of remainder. See https://reviews.llvm.org/D82721
-
Craig Topper authored
Looks like lld tests need updates too This reverts commit 3367e9da.
-
Ben Shi authored
-
Jonas Devlieghere authored
-
Nikita Popov authored
Move this test from InstCombine into InstSimplify.
-
Ryan Prichard authored
The builtins library name is special on Android: * There is an "-android" suffix. * For the compiler-rt i386 architecture, Android targets i686 (in the triple and in the builtins library filename) With this change, check-builtins works with Android. Reviewed By: compnerd Differential Revision: https://reviews.llvm.org/D82149
-
peter klausler authored
Implement cross-set EQUIVALENCE impossibility checking; fixes an infinite loop on an erroneous test. Also fix substring reference offset calculations in EQUIVALENCE discovered to be incorrect during testing. Reviewed By: tskeith Differential Revision: https://reviews.llvm.org/D82993
-
Sergey Dmitriev authored
Summary: This patch changes call graph analysis to recognize callback call sites and add an artificial 'reference' call record from the broker function caller to the callback function in the call graph. A presence of such reference enforces bottom-up traversal order for callback functions in CG SCC pass manager because callback function logically becomes a callee of the broker function caller. Reviewers: jdoerfert, hfinkel, sstefan1, baziotis Reviewed By: jdoerfert Subscribers: hiraditya, kuter, sstefan1, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D82572
-
Anatoly Trosinenko authored
Test the commit access to LLVM repository.
-
Gabriel Matute authored
Currently, `maybeExtendRange` takes a `CharSourceRange`, but only works correctly for the `TokenRange` case. This change adds proper support for the `CharRange` case. Reviewed By: gribozavr2 Differential Revision: https://reviews.llvm.org/D82901
-
Fangrui Song authored
[ELF] Don't resolve a relocation in .debug_line referencing an ICF folded symbol to the tombstone value After D81784, we resolve a relocation in .debug_* referencing an ICF folded section symbol to a tombstone value. Doing this for .debug_line has a problem (https://reviews.llvm.org/D81784#2116925 ): .debug_line may describe folded lines as having addresses UINT64_MAX or some wraparound small addresses. ``` int foo(int x) { return x; // line 2 } int bar(int x) { return x; // line 6 } ``` ``` Address Line Column File ISA Discriminator Flags ------------------ ------ ------ ------ --- ------------- ------------- 0x00000000002016c0 1 0 1 0 0 is_stmt 0x00000000002016c7 2 9 1 0 0 is_stmt prologue_end 0x00000000002016ca 2 2 1 0 0 0x00000000002016cc 2 2 1 0 0 end_sequence // UINT64_MAX and wraparound small addresses 0xffffffffffffffff 5 0 1 0 0 is_stmt 0x0000000000000006 6 9 1 0 0 is_stmt prologue_end 0x0000000000000009 6 2 1 0 0 0x000000000000000b 6 2 1 0 0 end_sequence 0x00000000002016d0 9 0 1 0 0 is_stmt 0x00000000002016df 10 6 1 0 0 is_stmt prologue_end 0x00000000002016e6 11 11 1 0 0 is_stmt ... ``` These entries can confuse debuggers: gdb before 2020-07-01 (binutils-gdb a8caed5d7faa639a1e6769eba551d15d8ddd9510 "Recognize -1 as a tombstone value in .debug_line") (can't continue due to a breakpoint in an invalid region of memory): ``` Warning: Cannot insert breakpoint 1. Cannot access memory at address 0x6 ``` lldb (breakpoint has no effect): ``` (lldb) b 6 Breakpoint 1: no locations (pending). WARNING: Unable to resolve breakpoint to any actual locations. ``` This patch special cases .debug_line to not use the tombstone value, restoring the previous behavior: .debug_line will have entries with the same addresses (ICF) but different line numbers. A breakpoint on line 2 or 6 will trigger on both functions. Reviewed By: dblaikie, jhenderson Differential Revision: https://reviews.llvm.org/D82828
-
Tony authored
- Add reference to implicit conversion description.
-
Eric Schweitz authored
This is the header file for lowering Fortran statements that depend on the Fortran runtime support library. The implementation of the lowering of these constructs will follow in a subsequent diff. Differential revision: https://reviews.llvm.org/D82991
-
Valentin Clement authored
Summary: This patch is removing the custom enumeration for OpenMP Directives and Clauses and replace them with the newly tablegen generated one from llvm/Frontend. This is a first patch and some will follow to share the same infrastructure where possible. The next patch should use the clauses allowance defined in the tablegen file. Reviewers: jdoerfert, DavidTruby, sscalpone, kiranchandramohan, ichoyjx Reviewed By: DavidTruby, ichoyjx Subscribers: ichoyjx, mgorny, yaxunl, guansong, jfb, sstefan1, aaron.ballman, llvm-commits Tags: #llvm, #flang Differential Revision: https://reviews.llvm.org/D82906
-
Eric Schweitz authored
[clang-tidy] Allows the prevailing include header guard in Flang to be recognized rather than flagged as a violation in phabricator. Differential revision: https://reviews.llvm.org/D82807
-
Craig Topper authored
[X86] Speculatively apply the same fix from 361853c9 to PromoteIntOp_MGATHER. The UpdateNodeOperands here is also subject to CSE.
-
Eli Friedman authored
I didn't notice these were missing when I wrote 15440191.
-
Craig Topper authored
[LegalizeTypes] Properly handle the case when UpdateNodeOperands in PromoteIntOp_MLOAD triggers CSE instead of updating the node in place. The caller can't handle the node having multiple results like a masked load does. So we need to detect the case and do our own result replacement. Fixes PR46532.
-
Nikita Popov authored
InstCombine may convert conditions like (x < C) && (y < C) into (x | y) < C (for some C). This patch teaches LVI to recognize that in this case, it can infer either x < C or y < C along the edge. This fixes the issue reported at https://github.com/rust-lang/rust/issues/73827. Differential Revision: https://reviews.llvm.org/D82715
-
Gui Andrade authored
-
Xun Li authored
Summary: The test file in D82928 generated temp files within the test directory, causing test failures. Fix it. Reviewers: modocache, fhahn Reviewed By: modocache Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D82986
-
Adrian Prantl authored
This un-breaks the testsuite after https://reviews.llvm.org/D82616
-
Adrian Prantl authored
This reverts commit 98c3a38a.
-
zoecarver authored
Adds `CodeGen::getCXXDestructorImplicitParam`, to retrieve a C++ destructor's implicit parameter (after the "this" pointer) based on the ABI in the given CodeGenModule. This will allow other frontends (Swift, for example) to easily emit calls to object destructors with correct ABI semantics and calling convetions. This is needed for Swift C++ interop. Here's the corresponding Swift change: https://github.com/apple/swift/pull/32291 Differential Revision: https://reviews.llvm.org/D82392
-
Matt Arsenault authored
-
Matt Arsenault authored
-