SuccessChanges

Summary

  1. [X86] Simplify broadcast mask detection with isUndefOrEqual helper. (details)
  2. [X86] Flip isShuffleEquivalent argument order to match isTargetShuffleEquivalent (details)
  3. [AArch64] Generate .note.gnu.property based on module flags. (details)
  4. [SCEV] Also use info from assumes in applyLoopGuards. (details)
Commit 6b5198f06b585e1fa3be530be2fbc76dd2d442c1 by llvm-dev
[X86] Simplify broadcast mask detection with isUndefOrEqual helper.

Add an additional isUndefOrEqual variant that matches an entire mask, not just a single value.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp (diff)
Commit e0820d87e3cd135a88ece609bef18a0401a85718 by llvm-dev
[X86] Flip isShuffleEquivalent argument order to match isTargetShuffleEquivalent

A while ago, we converted isShuffleEquivalent/isTargetShuffleEquivalent to both use IsElementEquivalent internally.

This allows us to make the shuffle args optional like isTargetShuffleEquivalent and update foldShuffleOfHorizOp to use isShuffleEquivalent (which it should as its using a ISD::VECTOR_SHUFFLE mask).
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp (diff)
Commit a48f6079f288619fcc7656e89e8aa7cd0aac1281 by daniel.kiss
[AArch64] Generate .note.gnu.property based on module flags.

Flags of the module derived exclusively from the compiler flag `-mbranch-protection`.
The note is generated based on the module flags accordingly.
After this change in case of compile unit without function won't have
the .note.gnu.property if the compiler flag is not present [1].

[1] https://bugs.llvm.org/show_bug.cgi?id=46480

Reviewed By: chill

Differential Revision: https://reviews.llvm.org/D80791
The file was removedllvm/test/CodeGen/AArch64/note-gnu-property-pac-bti-6.ll
The file was modifiedllvm/test/CodeGen/AArch64/note-gnu-property-pac-bti-1.ll (diff)
The file was modifiedllvm/test/CodeGen/AArch64/note-gnu-property-pac-bti-4.ll (diff)
The file was removedllvm/test/CodeGen/AArch64/note-gnu-property-pac-bti-8.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64AsmPrinter.cpp (diff)
The file was modifiedllvm/test/CodeGen/AArch64/note-gnu-property-pac-bti-3.ll (diff)
The file was removedllvm/test/CodeGen/AArch64/note-gnu-property-pac-bti-5.ll
The file was removedllvm/test/CodeGen/AArch64/note-gnu-property-pac-bti-7.ll
The file was modifiedllvm/test/CodeGen/AArch64/note-gnu-property-pac-bti-0.ll (diff)
The file was modifiedllvm/test/CodeGen/AArch64/note-gnu-property-pac-bti-2.ll (diff)
Commit 0ad793f321ed8714870cacf0421e60cf9a3b7468 by flo
[SCEV] Also use info from assumes in applyLoopGuards.

Similar to collecting information from branches guarding a loop, we can
also collect information from assumes dominating the loop header.

Fixes PR47247.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D87854
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp (diff)
The file was modifiedllvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll (diff)