FailedChanges

Summary

  1. [X86][NFC] Add a `use-aa` feature. Summary: This allows enabling useaa on the command-line and will allow enabling the feature on a per-CPU basis where benchmarking shows improvements. This is modelled after the ARM/AArch64 target. Reviewers: RKSimon, andreadb, craig.topper Subscribers: javed.absar, kristof.beyls, hiraditya, ychen, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D67266
  2. [InstCombine] add/move tests for icmp with add operand; NFC
  3. [clangd][vscode] update the development doc.
  4. Move some definitions from Sema to Basic to fix shared libs build r371875 moved some functionality around to a Basic header file, but didn't move its definitions as well. This patch moves some things around so that shared library building can work.
  5. [docs][llvm-strings] Write llvm-strings documentation Previously we only had a stub document. Reviewed by: MaskRay Differential Revision: https://reviews.llvm.org/D67554
  6. [docs][llvm-size] Write llvm-size documentation Previously we only had a stub document. Reviewed by: serge-sans-paille, MaskRay Differential Revision: https://reviews.llvm.org/D67555
  7. [ARM] Fold VCMP into VPT MVE has VPT instructions, which perform the duties of both a VCMP and a VPST in a single instruction, performing the compare and starting the VPT block in one. This teaches the MVEVPTBlockPass to fold them, searching back through the basicblock for a valid VCMP and creating the VPT from its operands. There are some changes to the VPT instructions to accommodate this, altering the order of the operands to match the VCMP better, and changing P0 register defs to be VPR defs, as is used in other places. Differential Revision: https://reviews.llvm.org/D66577
  8. [InstCombine] remove unneeded one-use checks for icmp fold This fold and several others were added in: rL125734 <https://reviews.llvm.org/rL125734> ...with no explanation for the one-use checks other than the code comments about register pressure. Given that this is IR canonicalization, we shouldn't be worried about register pressure though; the backend should be able to adjust for that as needed. This is part of solving PR43310 the theoretically right way: https://bugs.llvm.org/show_bug.cgi?id=43310 ...ie, if we don't cripple basic transforms, then we won't need to add special-case code to detect larger patterns. rL371940 is a related patch in this series.
  9. [clangd] Bump vscode-clangd v0.0.17 CHANGELOG: - added semantic highlighting support (under the clangd.semanticHighlighting flag); - better error message when clangd fails to execute refactoring-like actions; - improved the readme doc;
  10. [InstCombine] add icmp tests with extra uses; NFC
  11. [InstCombine] fix comments to match code; NFC This blob was written before match() existed, so it could probably be reduced significantly. But I suspect it isn't well tested, so tests would have to be added to reduce risk from logic changes.
  12. gn build: Merge r371976
  13. Implement semantic selections. Summary: For a given cursor position, it returns ranges that are interesting to the user. Currently the semantic ranges correspond to the nodes of the syntax trees. Subscribers: mgorny, jkorous, arphaman, kadircet, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D67358
  14. [VPlanSLP] Don't dereference a cast_or_null<VPInstruction> result. NFCI. The static analyzer is warning about a potential null dereference of the cast_or_null result, I've split the cast_or_null check from the ->getUnderlyingInstr() call to avoid this, but it appears that we weren't seeing any null pointers in the dumped bundles in the first place.
  15. [SLPVectorizer] Assert that we find a LastInst to silence analyzer null dereference warning. NFCI.
  16. [SLPVectorizer] Don't dereference a dyn_cast result. NFCI. The static analyzer is warning about potential null dereferences of dyn_cast<> results - in these cases we can safely use cast<> directly as we know that these cases should all be the correct type, which is why its working atm and anyway cast<> will assert if they aren't.
  17. Added return statement to fix compile and build warning: llvm-rtdyld.cpp:966:7: warning: variable ‘Result’ set but not used
  18. [clangd] Fix a crash when renaming operator. Summary: The renamelib uses a tricky way to calculate the end location by relying on decl name, this is incorrect for the overloaded operator (the name is "operator++" instead of "++"), which will cause out-of-file offset. We also disable renaming operator symbol, this case is tricky, and renamelib doesnt handle it properly. Reviewers: ilya-biryukov Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D67607
  19. Change signature of __builtin_rotateright64 back to unsigned The signature of __builtin_rotateright64 was by misstake changed from unsigned to signed in r360863, this patch will change it back to unsigned as intended. This fixes pr43309 Reviewers: efriedma, hans Reviewed By: hans Differential Revision: https://reviews.llvm.org/D67606
  20. Fix the rst doc, unbreak buildbot.
  21. [SVE][Inline-Asm] Add constraints for SVE predicate registers Summary: Adds the following inline asm constraints for SVE: - Upl: One of the low eight SVE predicate registers, P0 to P7 inclusive - Upa: SVE predicate register with full range, P0 to P15 Reviewers: t.p.northover, sdesmalen, rovka, momchil.velikov, cameron.mcinally, greened, rengolin Reviewed By: rovka Subscribers: javed.absar, tschuett, rkruppe, psnobl, cfe-commits, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D66524
  22. gn build: Merge r371965
  23. [clang-tidy] performance-inefficient-vector-operation: Support proto repeated field Summary: Finds calls that add element to protobuf repeated field in a loop without calling Reserve() before the loop. Calling Reserve() first can avoid unnecessary memory reallocations. A new option EnableProto is added to guard this feature. Patch by Cong Liu! Reviewers: gribozavr, alexfh, hokein, aaron.ballman Reviewed By: hokein Subscribers: lebedev.ri, xazax.hun, Eugene.Zelenko, cfe-commits Tags: #clang, #clang-tools-extra Differential Revision: https://reviews.llvm.org/D67135
  24. gn build: Merge r371959
  25. [AArch64] Some more FP16 FMA pattern matching After our previous machinecombiner exercises (rL371321, rL371818, rL371833), we were still missing a few FP16 FMA patterns. Differential Revision: https://reviews.llvm.org/D67576
  26. [SystemZ] Merge the SystemZExpandPseudo pass into SystemZPostRewrite. SystemZExpandPseudo:s only job was to expand LOCRMux instructions into jump sequences. This needs to be done if expandLOCRPseudo() or expandSELRPseudo() fails to find a legal opcode (all registers "high" or "low"). This task has now been moved to SystemZPostRewrite while removing the SystemZExpandPseudo pass. It is in fact preferred to expand these pseudos directly after register allocation in SystemZPostRewrite since the hinted register combinations are then not subject to later optimizations. Review: Ulrich Weigand https://reviews.llvm.org/D67432
  27. AMDGPU/GlobalISel: Remove illegal select tests These fail in a release build.
  28. AMDGPU/GlobalISel: Select SMRD loads for more types
  29. AMDGPU/GlobalISel: RegBankSelect for kill
  30. AMDGPU/GlobalISel: Legalize s1 source G_[SU]ITOFP
  31. AMDGPU/GlobalISel: Set type on vgpr live in special arguments Fixes assertion with workitem ID intrinsics used in non-kernel functions.
  32. AMDGPU/GlobalISel: Select S16->S32 fptoint
  33. AMDGPU/GlobalISel: Select s32->s16 G_[US]ITOFP
  34. AMDGPU/GlobalISel: Fix VALU s16 fneg
  35. [Attributor] Heap-To-Stack Conversion D53362 gives a prototype heap-to-stack conversion pass. With addition of new attributes in the attributor, this can now be revisted and improved. This will place it in the Attributor to make it easier to use new attributes (eg. nofree, nosync, willreturn, etc.) and other attributor features. Reviewers: jdoerfert, uenoku, hfinkel, efriedma Subscribers: lebedev.ri, xbolva00, hiraditya, llvm-commits Differential Revision: https://reviews.llvm.org/D65408
  36. Commit missing part of "Split many_tls_keys.cpp into two tests" https://reviews.llvm.org/D67428 This change was lost due to a file rename and modification.
  37. [InstCombine] remove unneeded one-use checks for icmp fold This fold and several others were added in: rL125734 ...with no explanation for the one-use checks other than the code comments about register pressure. Given that this is IR canonicalization, we shouldn't be worried about register pressure though; the backend should be able to adjust for that as needed. There are similar checks as noted with the TODO comments. I'm hoping to remove those restrictions too, but if any of these does cause a regression, it should be easier to correct by making small, individual commits. This is part of solving PR43310 the theoretically right way: https://bugs.llvm.org/show_bug.cgi?id=43310 ...ie, if we don't cripple basic transforms, then we won't need to add special-case code to detect larger patterns.
  38. [InstCombine] add icmp tests with extra uses; NFC
  39. [PowerPC][NFC] Add a testcase for fdiv expansion. Pre-commit for following patch.
Revision 371989 by courbet:
[X86][NFC] Add a `use-aa` feature.

Summary:
This allows enabling useaa on the command-line and will allow enabling the
feature on a per-CPU basis where benchmarking shows improvements.

This is modelled after the ARM/AArch64 target.

Reviewers: RKSimon, andreadb, craig.topper

Subscribers: javed.absar, kristof.beyls, hiraditya, ychen, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D67266
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86.td (diff)llvm.src/lib/Target/X86/X86.td
The file was modified/llvm/trunk/lib/Target/X86/X86Subtarget.h (diff)llvm.src/lib/Target/X86/X86Subtarget.h
Revision 371988 by spatel:
[InstCombine] add/move tests for icmp with add operand; NFC
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/Transforms/InstCombine/icmp-add.ll (diff)llvm.src/test/Transforms/InstCombine/icmp-add.ll
The file was modified/llvm/trunk/test/Transforms/InstCombine/icmp.ll (diff)llvm.src/test/Transforms/InstCombine/icmp.ll
Revision 371986 by hokein:
[clangd][vscode] update the development doc.
Change TypePath in RepositoryPath in Workspace
The file was modified/clang-tools-extra/trunk/clangd/clients/clangd-vscode/DEVELOPING.md (diff)clang-tools-extra.src/clangd/clients/clangd-vscode/DEVELOPING.md
Revision 371985 by erichkeane:
Move some definitions from Sema to Basic to fix shared libs build

r371875 moved some functionality around to a Basic header file, but
didn't move its definitions as well.  This patch moves some things
around so that shared library building can work.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Basic/Attributes.cpp (diff)clang.src/lib/Basic/Attributes.cpp
The file was modified/cfe/trunk/lib/Sema/ParsedAttr.cpp (diff)clang.src/lib/Sema/ParsedAttr.cpp
The file was modified/cfe/trunk/utils/TableGen/ClangAttrEmitter.cpp (diff)clang.src/utils/TableGen/ClangAttrEmitter.cpp
Revision 371984 by jhenderson:
[docs][llvm-strings] Write llvm-strings documentation

Previously we only had a stub document.

Reviewed by: MaskRay

Differential Revision: https://reviews.llvm.org/D67554
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/docs/CommandGuide/llvm-strings.rst (diff)llvm.src/docs/CommandGuide/llvm-strings.rst
Revision 371983 by jhenderson:
[docs][llvm-size] Write llvm-size documentation

Previously we only had a stub document.

Reviewed by: serge-sans-paille, MaskRay

Differential Revision: https://reviews.llvm.org/D67555
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/docs/CommandGuide/llvm-size.rst (diff)llvm.src/docs/CommandGuide/llvm-size.rst
Revision 371982 by dmgreen:
[ARM] Fold VCMP into VPT

MVE has VPT instructions, which perform the duties of both a VCMP and a VPST in
a single instruction, performing the compare and starting the VPT block in one.
This teaches the MVEVPTBlockPass to fold them, searching back through the
basicblock for a valid VCMP and creating the VPT from its operands.

There are some changes to the VPT instructions to accommodate this, altering
the order of the operands to match the VCMP better, and changing P0 register
defs to be VPR defs, as is used in other places.

Differential Revision: https://reviews.llvm.org/D66577
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/ARM/ARMInstrMVE.td (diff)llvm.src/lib/Target/ARM/ARMInstrMVE.td
The file was modified/llvm/trunk/lib/Target/ARM/MVEVPTBlockPass.cpp (diff)llvm.src/lib/Target/ARM/MVEVPTBlockPass.cpp
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-masked-ldst.ll (diff)llvm.src/test/CodeGen/Thumb2/mve-masked-ldst.ll
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-masked-load.ll (diff)llvm.src/test/CodeGen/Thumb2/mve-masked-load.ll
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-masked-store.ll (diff)llvm.src/test/CodeGen/Thumb2/mve-masked-store.ll
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-pred-and.ll (diff)llvm.src/test/CodeGen/Thumb2/mve-pred-and.ll
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-pred-not.ll (diff)llvm.src/test/CodeGen/Thumb2/mve-pred-not.ll
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-pred-or.ll (diff)llvm.src/test/CodeGen/Thumb2/mve-pred-or.ll
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vcmpf.ll (diff)llvm.src/test/CodeGen/Thumb2/mve-vcmpf.ll
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vcmpfr.ll (diff)llvm.src/test/CodeGen/Thumb2/mve-vcmpfr.ll
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vcmpfz.ll (diff)llvm.src/test/CodeGen/Thumb2/mve-vcmpfz.ll
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vpt-block.mir (diff)llvm.src/test/CodeGen/Thumb2/mve-vpt-block.mir
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vpt-block2.mir (diff)llvm.src/test/CodeGen/Thumb2/mve-vpt-block2.mir
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vpt-block3.mir (diff)llvm.src/test/CodeGen/Thumb2/mve-vpt-block3.mir
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vpt-block4.mir (diff)llvm.src/test/CodeGen/Thumb2/mve-vpt-block4.mir
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vpt-block5.mir (diff)llvm.src/test/CodeGen/Thumb2/mve-vpt-block5.mir
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vpt-block6.mir (diff)llvm.src/test/CodeGen/Thumb2/mve-vpt-block6.mir
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vpt-block7.mir (diff)llvm.src/test/CodeGen/Thumb2/mve-vpt-block7.mir
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vpt-block8.mir (diff)llvm.src/test/CodeGen/Thumb2/mve-vpt-block8.mir
The file was modified/llvm/trunk/test/CodeGen/Thumb2/mve-vpt-nots.mir (diff)llvm.src/test/CodeGen/Thumb2/mve-vpt-nots.mir
Revision 371981 by spatel:
[InstCombine] remove unneeded one-use checks for icmp fold

This fold and several others were added in:
rL125734 <https://reviews.llvm.org/rL125734>
...with no explanation for the one-use checks other than the code
comments about register pressure.

Given that this is IR canonicalization, we shouldn't be worried
about register pressure though; the backend should be able to
adjust for that as needed.

This is part of solving PR43310 the theoretically right way:
https://bugs.llvm.org/show_bug.cgi?id=43310
...ie, if we don't cripple basic transforms, then we won't
need to add special-case code to detect larger patterns.

rL371940 is a related patch in this series.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Transforms/InstCombine/InstCombineCompares.cpp (diff)llvm.src/lib/Transforms/InstCombine/InstCombineCompares.cpp
The file was modified/llvm/trunk/test/Transforms/InstCombine/icmp.ll (diff)llvm.src/test/Transforms/InstCombine/icmp.ll
Revision 371980 by hokein:
[clangd] Bump vscode-clangd v0.0.17

CHANGELOG:
- added semantic highlighting support (under the clangd.semanticHighlighting
  flag);
- better error message when clangd fails to execute refactoring-like
  actions;
- improved the readme doc;
Change TypePath in RepositoryPath in Workspace
The file was modified/clang-tools-extra/trunk/clangd/clients/clangd-vscode/package.json (diff)clang-tools-extra.src/clangd/clients/clangd-vscode/package.json
Revision 371979 by spatel:
[InstCombine] add icmp tests with extra uses; NFC
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/Transforms/InstCombine/icmp.ll (diff)llvm.src/test/Transforms/InstCombine/icmp.ll
Revision 371978 by spatel:
[InstCombine] fix comments to match code; NFC

This blob was written before match() existed, so it
could probably be reduced significantly.

But I suspect it isn't well tested, so tests would have
to be added to reduce risk from logic changes.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Transforms/InstCombine/InstCombineCompares.cpp (diff)llvm.src/lib/Transforms/InstCombine/InstCombineCompares.cpp
Revision 371977 by nico:
gn build: Merge r371976
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn (diff)llvm.src/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
The file was modified/llvm/trunk/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn (diff)llvm.src/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
Revision 371976 by usaxena95:
Implement semantic selections.

Summary:
For a given cursor position, it returns ranges that are interesting to the user.
Currently the semantic ranges correspond to the nodes of the syntax trees.

Subscribers: mgorny, jkorous, arphaman, kadircet, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D67358
Change TypePath in RepositoryPath in Workspace
The file was modified/clang-tools-extra/trunk/clangd/CMakeLists.txt (diff)clang-tools-extra.src/clangd/CMakeLists.txt
The file was added/clang-tools-extra/trunk/clangd/SemanticSelection.cppclang-tools-extra.src/clangd/SemanticSelection.cpp
The file was added/clang-tools-extra/trunk/clangd/SemanticSelection.hclang-tools-extra.src/clangd/SemanticSelection.h
The file was modified/clang-tools-extra/trunk/clangd/unittests/CMakeLists.txt (diff)clang-tools-extra.src/clangd/unittests/CMakeLists.txt
The file was added/clang-tools-extra/trunk/clangd/unittests/SemanticSelectionTests.cppclang-tools-extra.src/clangd/unittests/SemanticSelectionTests.cpp
Revision 371975 by rksimon:
[VPlanSLP] Don't dereference a cast_or_null<VPInstruction> result. NFCI.

The static analyzer is warning about a potential null dereference of the cast_or_null result, I've split the cast_or_null check from the ->getUnderlyingInstr() call to avoid this, but it appears that we weren't seeing any null pointers in the dumped bundles in the first place.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Transforms/Vectorize/VPlanSLP.cpp (diff)llvm.src/lib/Transforms/Vectorize/VPlanSLP.cpp
Revision 371974 by rksimon:
[SLPVectorizer] Assert that we find a LastInst to silence analyzer null dereference warning. NFCI.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp (diff)llvm.src/lib/Transforms/Vectorize/SLPVectorizer.cpp
Revision 371973 by rksimon:
[SLPVectorizer] Don't dereference a dyn_cast result. NFCI.

The static analyzer is warning about potential null dereferences of dyn_cast<> results - in these cases we can safely use cast<> directly as we know that these cases should all be the correct type, which is why its working atm and anyway cast<> will assert if they aren't.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp (diff)llvm.src/lib/Transforms/Vectorize/SLPVectorizer.cpp
Revision 371972 by sjoerdmeijer:
Added return statement to fix compile and build warning:

llvm-rtdyld.cpp:966:7: warning: variable ‘Result’ set but not used
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/tools/llvm-rtdyld/llvm-rtdyld.cpp (diff)llvm.src/tools/llvm-rtdyld/llvm-rtdyld.cpp
Revision 371971 by hokein:
[clangd] Fix a crash when renaming operator.

Summary:
The renamelib uses a tricky way to calculate the end location by relying
on decl name, this is incorrect for the overloaded operator (the name is
"operator++" instead of "++"), which will cause out-of-file offset.

We also disable renaming operator symbol, this case is tricky, and
renamelib doesnt handle it properly.

Reviewers: ilya-biryukov

Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D67607
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h (diff)clang.src/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h
The file was modified/clang-tools-extra/trunk/clangd/refactor/Rename.cpp (diff)clang-tools-extra.src/clangd/refactor/Rename.cpp
The file was modified/clang-tools-extra/trunk/clangd/unittests/RenameTests.cpp (diff)clang-tools-extra.src/clangd/unittests/RenameTests.cpp
Revision 371969 by karka:
Change signature of __builtin_rotateright64 back to unsigned

The signature of __builtin_rotateright64 was by misstake changed from
unsigned to signed in r360863, this patch will change it back to
unsigned as intended.

This fixes pr43309

Reviewers: efriedma, hans

Reviewed By: hans

Differential Revision: https://reviews.llvm.org/D67606
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/Basic/Builtins.def (diff)clang.src/include/clang/Basic/Builtins.def
The file was modified/cfe/trunk/test/CodeGen/avr-builtins.c (diff)clang.src/test/CodeGen/avr-builtins.c
Revision 371968 by hokein:
Fix the rst doc, unbreak buildbot.
Change TypePath in RepositoryPath in Workspace
The file was modified/clang-tools-extra/trunk/docs/clang-tidy/checks/performance-inefficient-vector-operation.rst (diff)clang-tools-extra.src/docs/clang-tidy/checks/performance-inefficient-vector-operation.rst
Revision 371967 by kmclaughlin:
[SVE][Inline-Asm] Add constraints for SVE predicate registers

Summary:
Adds the following inline asm constraints for SVE:
  - Upl: One of the low eight SVE predicate registers, P0 to P7 inclusive
  - Upa: SVE predicate register with full range, P0 to P15

Reviewers: t.p.northover, sdesmalen, rovka, momchil.velikov, cameron.mcinally, greened, rengolin

Reviewed By: rovka

Subscribers: javed.absar, tschuett, rkruppe, psnobl, cfe-commits, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D66524
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/docs/LangRef.rst (diff)llvm.src/docs/LangRef.rst
The file was modified/llvm/trunk/lib/IR/InlineAsm.cpp (diff)llvm.src/lib/IR/InlineAsm.cpp
The file was modified/llvm/trunk/lib/Target/AArch64/AArch64AsmPrinter.cpp (diff)llvm.src/lib/Target/AArch64/AArch64AsmPrinter.cpp
The file was modified/llvm/trunk/lib/Target/AArch64/AArch64ISelLowering.cpp (diff)llvm.src/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modified/llvm/trunk/lib/Target/AArch64/AArch64InstrInfo.cpp (diff)llvm.src/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was modified/llvm/trunk/test/CodeGen/AArch64/aarch64-sve-asm.ll (diff)llvm.src/test/CodeGen/AArch64/aarch64-sve-asm.ll
Revision 371966 by nico:
gn build: Merge r371965
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/utils/gn/secondary/lld/ELF/BUILD.gn (diff)llvm.src/utils/gn/secondary/lld/ELF/BUILD.gn
Revision 371963 by hokein:
[clang-tidy] performance-inefficient-vector-operation: Support proto repeated field

Summary:
Finds calls that add element to protobuf repeated field in a loop
without calling Reserve() before the loop. Calling Reserve() first can avoid
unnecessary memory reallocations.

A new option EnableProto is added to guard this feature.

Patch by Cong Liu!

Reviewers: gribozavr, alexfh, hokein, aaron.ballman

Reviewed By: hokein

Subscribers: lebedev.ri, xazax.hun, Eugene.Zelenko, cfe-commits

Tags: #clang, #clang-tools-extra

Differential Revision: https://reviews.llvm.org/D67135
Change TypePath in RepositoryPath in Workspace
The file was modified/clang-tools-extra/trunk/clang-tidy/performance/InefficientVectorOperationCheck.cpp (diff)clang-tools-extra.src/clang-tidy/performance/InefficientVectorOperationCheck.cpp
The file was modified/clang-tools-extra/trunk/clang-tidy/performance/InefficientVectorOperationCheck.h (diff)clang-tools-extra.src/clang-tidy/performance/InefficientVectorOperationCheck.h
The file was modified/clang-tools-extra/trunk/docs/clang-tidy/checks/performance-inefficient-vector-operation.rst (diff)clang-tools-extra.src/docs/clang-tidy/checks/performance-inefficient-vector-operation.rst
The file was modified/clang-tools-extra/trunk/test/clang-tidy/performance-inefficient-vector-operation.cpp (diff)clang-tools-extra.src/test/clang-tidy/performance-inefficient-vector-operation.cpp
Revision 371961 by nico:
gn build: Merge r371959
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/utils/gn/secondary/llvm/lib/Target/SystemZ/BUILD.gn (diff)llvm.src/utils/gn/secondary/llvm/lib/Target/SystemZ/BUILD.gn
Revision 371960 by sjoerdmeijer:
[AArch64] Some more FP16 FMA pattern matching

After our previous machinecombiner exercises (rL371321, rL371818, rL371833), we
were still missing a few FP16 FMA patterns.

Differential Revision: https://reviews.llvm.org/D67576
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AArch64/AArch64InstrInfo.td (diff)llvm.src/lib/Target/AArch64/AArch64InstrInfo.td
The file was modified/llvm/trunk/test/CodeGen/AArch64/fp16_intrinsic_lane.ll (diff)llvm.src/test/CodeGen/AArch64/fp16_intrinsic_lane.ll
The file was modified/llvm/trunk/test/CodeGen/AArch64/fp16_intrinsic_scalar_3op.ll (diff)llvm.src/test/CodeGen/AArch64/fp16_intrinsic_scalar_3op.ll
Revision 371959 by jonpa:
[SystemZ]  Merge the SystemZExpandPseudo pass into SystemZPostRewrite.

SystemZExpandPseudo:s only job was to expand LOCRMux instructions into jump
sequences. This needs to be done if expandLOCRPseudo() or expandSELRPseudo()
fails to find a legal opcode (all registers "high" or "low"). This task has
now been moved to SystemZPostRewrite while removing the SystemZExpandPseudo
pass.

It is in fact preferred to expand these pseudos directly after register
allocation in SystemZPostRewrite since the hinted register combinations are
then not subject to later optimizations.

Review: Ulrich Weigand
https://reviews.llvm.org/D67432
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/SystemZ/CMakeLists.txt (diff)llvm.src/lib/Target/SystemZ/CMakeLists.txt
The file was modified/llvm/trunk/lib/Target/SystemZ/SystemZ.h (diff)llvm.src/lib/Target/SystemZ/SystemZ.h
The file was removed/llvm/trunk/lib/Target/SystemZ/SystemZExpandPseudo.cppllvm.src/lib/Target/SystemZ/SystemZExpandPseudo.cpp
The file was modified/llvm/trunk/lib/Target/SystemZ/SystemZInstrInfo.cpp (diff)llvm.src/lib/Target/SystemZ/SystemZInstrInfo.cpp
The file was modified/llvm/trunk/lib/Target/SystemZ/SystemZInstrInfo.h (diff)llvm.src/lib/Target/SystemZ/SystemZInstrInfo.h
The file was modified/llvm/trunk/lib/Target/SystemZ/SystemZPostRewrite.cpp (diff)llvm.src/lib/Target/SystemZ/SystemZPostRewrite.cpp
The file was modified/llvm/trunk/lib/Target/SystemZ/SystemZRegisterInfo.h (diff)llvm.src/lib/Target/SystemZ/SystemZRegisterInfo.h
The file was modified/llvm/trunk/lib/Target/SystemZ/SystemZTargetMachine.cpp (diff)llvm.src/lib/Target/SystemZ/SystemZTargetMachine.cpp
Revision 371955 by arsenm:
AMDGPU/GlobalISel: Remove illegal select tests

These fail in a release build.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-constant.mir (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-constant.mir
Revision 371954 by arsenm:
AMDGPU/GlobalISel: Select SMRD loads for more types
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/SMInstructions.td (diff)llvm.src/lib/Target/AMDGPU/SMInstructions.td
The file was added/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-constant.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-constant.mir
Revision 371953 by arsenm:
AMDGPU/GlobalISel: RegBankSelect for kill
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp (diff)llvm.src/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was added/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.kill.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.kill.mir
Revision 371952 by arsenm:
AMDGPU/GlobalISel: Legalize s1 source G_[SU]ITOFP
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp (diff)llvm.src/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/regbankselect-sitofp.mir (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/regbankselect-sitofp.mir
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/regbankselect-uitofp.mir (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/regbankselect-uitofp.mir
Revision 371951 by arsenm:
AMDGPU/GlobalISel: Set type on vgpr live in special arguments

Fixes assertion with workitem ID intrinsics used in non-kernel
functions.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIISelLowering.cpp (diff)llvm.src/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
Revision 371950 by arsenm:
AMDGPU/GlobalISel: Select S16->S32 fptoint
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp (diff)llvm.src/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIInstructions.td (diff)llvm.src/lib/Target/AMDGPU/SIInstructions.td
The file was added/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptosi.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptosi.mir
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptoui.mir (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptoui.mir
Revision 371949 by arsenm:
AMDGPU/GlobalISel: Select s32->s16 G_[US]ITOFP
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIInstructions.td (diff)llvm.src/lib/Target/AMDGPU/SIInstructions.td
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-sitofp.mir (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-sitofp.mir
The file was added/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-uitofp.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-uitofp.mir
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-sitofp.mir (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/legalize-sitofp.mir
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/legalize-uitofp.mir (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/legalize-uitofp.mir
Revision 371948 by arsenm:
AMDGPU/GlobalISel: Fix VALU s16 fneg
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIInstructions.td (diff)llvm.src/lib/Target/AMDGPU/SIInstructions.td
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-fneg.mir (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-fneg.mir
Revision 371942 by sstefan:
[Attributor] Heap-To-Stack Conversion

D53362 gives a prototype heap-to-stack conversion pass. With addition of new attributes in the attributor, this can now be revisted and improved. This will place it in the Attributor to make it easier to use new attributes (eg. nofree, nosync, willreturn, etc.) and other attributor features.

Reviewers: jdoerfert, uenoku, hfinkel, efriedma

Subscribers: lebedev.ri, xbolva00, hiraditya, llvm-commits

Differential Revision: https://reviews.llvm.org/D65408
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/Transforms/IPO/Attributor.h (diff)llvm.src/include/llvm/Transforms/IPO/Attributor.h
The file was modified/llvm/trunk/lib/Transforms/IPO/Attributor.cpp (diff)llvm.src/lib/Transforms/IPO/Attributor.cpp
The file was added/llvm/trunk/test/Transforms/FunctionAttrs/heap_to_stack.llllvm.src/test/Transforms/FunctionAttrs/heap_to_stack.ll
Revision 371941 by kamil:
Commit missing part of "Split many_tls_keys.cpp into two tests"

https://reviews.llvm.org/D67428

This change was lost due to a file rename and modification.
Change TypePath in RepositoryPath in Workspace
The file was modified/compiler-rt/trunk/test/lsan/TestCases/many_tls_keys_pthread.cpp (diff)compiler-rt.src/test/lsan/TestCases/many_tls_keys_pthread.cpp
The file was modified/compiler-rt/trunk/test/lsan/TestCases/many_tls_keys_thread.cpp (diff)compiler-rt.src/test/lsan/TestCases/many_tls_keys_thread.cpp
Revision 371940 by spatel:
[InstCombine] remove unneeded one-use checks for icmp fold

This fold and several others were added in:
rL125734
...with no explanation for the one-use checks other than the code
comments about register pressure.

Given that this is IR canonicalization, we shouldn't be worried
about register pressure though; the backend should be able to
adjust for that as needed.

There are similar checks as noted with the TODO comments. I'm
hoping to remove those restrictions too, but if any of these
does cause a regression, it should be easier to correct by making
small, individual commits.

This is part of solving PR43310 the theoretically right way:
https://bugs.llvm.org/show_bug.cgi?id=43310
...ie, if we don't cripple basic transforms, then we won't
need to add special-case code to detect larger patterns.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Transforms/InstCombine/InstCombineCompares.cpp (diff)llvm.src/lib/Transforms/InstCombine/InstCombineCompares.cpp
The file was modified/llvm/trunk/test/Transforms/InstCombine/icmp.ll (diff)llvm.src/test/Transforms/InstCombine/icmp.ll
Revision 371939 by spatel:
[InstCombine] add icmp tests with extra uses; NFC
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/Transforms/InstCombine/icmp.ll (diff)llvm.src/test/Transforms/InstCombine/icmp.ll
Revision 371938 by jsji:
[PowerPC][NFC] Add a testcase for fdiv expansion.

Pre-commit for following patch.
Change TypePath in RepositoryPath in Workspace
The file was added/llvm/trunk/test/CodeGen/PowerPC/fdiv.llllvm.src/test/CodeGen/PowerPC/fdiv.ll