- Jan 18, 2020
-
-
Lei Zhang authored
Again for pleasing GCC 5.
-
Christopher Tetreault authored
Summary: * Pass the Scalability test to VectorType::get in order to be able to deserialize bitcode that contains scalable vector operations Change-Id: I37fe5b1c0c237a9153130deefdc1a6d595c7f12e Reviewers: efriedma, pcc, sdesmalen, apazos, huihuiz, chrisj Reviewed By: sdesmalen Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D72792
-
Alexey Bataev authored
Emit more precise debug locations for the OpenMP outlined regions.
-
Mike Lambert authored
-
Alina Sbirlea authored
-
Adrian Prantl authored
-
Davide Italiano authored
Patch by Jason Molenda, fixes a test failure on arm64 devices.
-
Alina Sbirlea authored
-
Alina Sbirlea authored
Summary: Add invalidate method in LazyCallGraph. Reviewers: chandlerc, silvas Subscribers: hiraditya, sanjoy.google, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D72817
-
Alina Sbirlea authored
Summary: Add invalidate method in CallGraph. Reviewers: Eugene.Zelenko, chandlerc Subscribers: hiraditya, sanjoy.google, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D72816
-
Alina Sbirlea authored
Summary: Add invalidate method for BrachProbablityInfo. Reviewers: Eugene.Zelenko, chandlerc Subscribers: hiraditya, sanjoy.google, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D72815
-
Stanislav Mekhanoshin authored
This is supported starting with GFX9. Differential Revision: https://reviews.llvm.org/D72865
-
Lei Zhang authored
Hopefully this pleases GCC 5.
-
Krzysztof Parzyszek authored
-
Alina Sbirlea authored
Summary: Add invalidate method to GlobalsAA. Reviewers: tejohnson, chandlerc Subscribers: hiraditya, sanjoy.google, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D72818
-
Fangrui Song authored
llvm-nm on Linux prints 0 line while llvm-nm on macOS prints 1 line.
-
Brian Cain authored
The check() in HexagonShuffle has been decomposed into smaller steps. No functionality change is intended with this commit.
-
River Riddle authored
Summary: This field is currently not used by anything, and using a ClassID instance provides better support for more efficient classof. Reviewers: mehdi_amini, nicolasvasilache Reviewed By: mehdi_amini Subscribers: merge_guards_bot, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D72822
-
Fangrui Song authored
-
Sanne Wouda authored
Summary: When compiling with -munwind-tables, the SEH filter funclet needs the uwtable function attribute, which gets automatically added if we use SetInternalFunctionAttributes. The filter funclet is internal so this seems appropriate. Reviewers: rnk Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D72786
-
Fangrui Song authored
-
Fangrui Song authored
-
Francis Visoiu Mistrih authored
After D69825, the output of clang -### when running in process can be prefixed by ' (in-process)'. Skip it.
-
Adrian Prantl authored
This is a purely cosmetic change that is NFC in terms of the binary output. I bugs me that I called the attribute DW_AT_LLVM_isysroot since the "i" is an artifact of GCC command line option syntax (-isysroot is in the category of -i options) and doesn't carry any useful information otherwise. This attribute only appears in Clang module debug info. Differential Revision: https://reviews.llvm.org/D71722
-
Lei Zhang authored
-
Sam Clegg authored
Previously we were reporting this error if we were list no symbols which is not the same thing as the file containing no symbols. Also, always report the filename when printing errors. This matches the GNU nm behaviour. This a followup to https://reviews.llvm.org/D52810 Differential Revision: https://reviews.llvm.org/D72658
-
Drew Wock authored
[SeparateConstOffsetFromGEP] Fix: sext(a) + sext(b) -> sext(a + b) matches add and sub instructions with one another During the SeparateConstOffsetFromGEP pass, signed extensions are distributed to the values that feed into them and then later recombined. The recombination stage is somewhat problematic- it doesn't differ add and sub instructions from another when matching the sext(a) +/- sext(b) -> sext(a +/- b) pattern in some instances. An example- the IR contains: %unextendedA %unextendedB %subuAuB = unextendedA - unextendedB %extA = extend A %extB = extend B %addeAeB = extA + extB The problematic optimization will transform that into: %unextendedA %unextendedB %subuAuB = unextendedA - unextendedB %extA = extend A %extB = extend B %addeAeB = extend subuAuB ; Obviously not semantically equivalent to the IR input. This patch fixes that. Patch by Drew Wock <drew.wock@sas.com> Differential Revision: https://reviews.llvm.org/D65967
-
Alex Zinenko authored
Introduce a new generator for MLIR tablegen driver that consumes LLVM IR intrinsic definitions and produces MLIR ODS definitions. This is useful to bulk-generate MLIR operations equivalent to existing LLVM IR intrinsics, such as additional arithmetic instructions or NVVM. A test exercising the generation is also added. It reads the main LLVM intrinsics file and produces ODS to make sure the TableGen model remains in sync with what is used in LLVM. Differential Revision: https://reviews.llvm.org/D72926
-
Yitzhak Mandelbaum authored
Summary: Currently, an attempt to rewrite source code inside a macro expansion succeeds, but results in empty text, rather than failing with an error. This patch restructures to the code to explicitly validate ranges before attempting to edit them. Reviewers: gribozavr Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D72274
-
Nikita Popov authored
Fixes https://bugs.llvm.org/show_bug.cgi?id=44552. We need to make sure that the store is reprocessed, because performing DSE may expose more DSE opportunities. There is a slight caveat here though: We need to make sure that we add back the store the worklist first, because that means it will be processed after the operands of the removed store have been processed. This is a general bug in InstCombine worklist management that I hope to address at some point, but for now it means we need to do this manually rather than just returning the instruction as changed. Differential Revision: https://reviews.llvm.org/D72807
-
Andy Davis authored
Summary: Update vector transfer read op comments. Reviewers: nicolasvasilache, aartbik Reviewed By: nicolasvasilache, aartbik Subscribers: merge_guards_bot, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, liufengdb, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D72731
-
Denis Khalikov authored
When lowering `loop.if` to `spv.selection` we explicitly create a selection header block before the control flow diverges and a merge block where control flow subsequently converges. Differential Revision: https://reviews.llvm.org/D72836
-
Alex Zinenko authored
Several functions were missing documentation.
-
Nikita Popov authored
There are two related bugs here: First, we don't add the operand we're replacing to the worklist, which means it may not get DCEd (see test change). Second, usually this would just get picked up in the next iteration, but we also do not report the instruction as changed. This means that we do not get that extra instcombine iteration, and more importantly, may break the pass pipeline, as the function is not marked as changed. Differential Revision: https://reviews.llvm.org/D72864
-
Nikita Popov authored
The IR difference in @icmp1 serves as a test for D72864.
-
Nikita Popov authored
Currently, there is no way to disable ExpensiveCombines when doing a standalone opt -instcombine run, as that's the default, and the opt option can currently only be used to force enable, not to force disable. The only way to disable expensive combines is via -O1 or -O2, but that of course also runs the rest of the kitchen sink... This patch allows using opt -instcombine -expensive-combines=0 to run InstCombine without ExpensiveCombines. Differential Revision: https://reviews.llvm.org/D72861
-
Nikita Popov authored
This shows that -expensive-combines=0 is ignored.
-
Lei Zhang authored
This makes the local variable `implies` to have the correct type to satisfy ArrayRef's constructor: /*implicit*/ constexpr ArrayRef(const T (&Arr)[N]) Hopefully this should please GCC 5. Differential Revision: https://reviews.llvm.org/D72924
-
Sam McCall authored
-