SuccessChanges

Summary

  1. [docs] Remove training whitespaces. NFC (details)
  2. [ELF] Error if the linked-to section of a SHF_LINK_ORDER section is (details)
  3. [ARM] Fix CTTZ not generating correct instructions MVE (details)
  4. [InstCombine] Tests for (a+b)<=a && (a+b)!=0 fold (PR43259) (details)
  5. [MVT] Add v256i1 to MachineValueType (details)
  6. Remove assert from MachineLoop::getLoopPredecessor() (details)
  7. Unwind: prevent unw_get_proc_info from returning stale data (details)
Commit be428513cb05893e74a7276a21b12b709db53bb9 by francesco.petrogalli
[docs] Remove training whitespaces. NFC
Subscribers: jfb, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D67835
llvm-svn: 372399
The file was modifiedllvm/docs/Frontend/PerformanceTips.rst (diff)
Commit 267205149587595e956db25a12252835a51cd372 by maskray
[ELF] Error if the linked-to section of a SHF_LINK_ORDER section is
discarded
Summary: If st_link(A)=B, and A has the SHF_LINK_ORDER flag, we may
dereference a null pointer if B is garbage collected (PR43147):
1. In Wrter.cpp:compareByFilePosition, `aOut->sectionIndex` or
`bOut->sectionIndex` 2. In OutputSections::finalize,
`d->getParent()->sectionIndex`
Simply error and bail out to avoid null pointer dereferences. ld.bfd has
a similar error:
    sh_link of section `.bar' points to discarded section `.foo0' of
`a.o'
ld.bfd is more permissive in that it just checks whether the linked-to
section of the first input section is discarded. This is likely because
it sets sh_link of the output section according to the first input
section.
Reviewed By: grimar
Differential Revision: https://reviews.llvm.org/D67761
llvm-svn: 372400
The file was modifiedlld/ELF/Writer.cpp (diff)
The file was addedlld/test/ELF/gc-sections-metadata-err.s
Commit c84722ff277a6848dfa17d137dcf21d64cdfb972 by oliver.cruickshank
[ARM] Fix CTTZ not generating correct instructions MVE
CTTZ intrinsic should have been set to Custom, not Expand
llvm-svn: 372401
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp (diff)
The file was modifiedllvm/test/CodeGen/Thumb2/mve-cttz.ll (diff)
Commit d21087af958656e3eab173fc69bf7a83a3956e90 by lebedev.ri
[InstCombine] Tests for (a+b)<=a && (a+b)!=0 fold (PR43259)
https://rise4fun.com/Alive/knp https://rise4fun.com/Alive/ALap
llvm-svn: 372402
The file was modifiedllvm/test/Transforms/InstCombine/result-of-add-of-negative-is-non-zero-and-no-underflow.ll (diff)
The file was addedllvm/test/Transforms/InstCombine/result-of-add-of-negative-or-zero-is-non-zero-and-no-underflow.ll
Commit 2b5d7e93dd18c13d5358f602d361273ec0960b37 by kparzysz
[MVT] Add v256i1 to MachineValueType
This type can show up when lowering some HVX vector code on Hexagon.
llvm-svn: 372403
The file was addedllvm/test/CodeGen/Hexagon/autohvx/isel-setcc-v256i1.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp (diff)
The file was modifiedllvm/lib/CodeGen/ValueTypes.cpp (diff)
The file was modifiedllvm/include/llvm/Support/MachineValueType.h (diff)
The file was modifiedllvm/include/llvm/CodeGen/ValueTypes.td (diff)
Commit af77ca7e6e738b7963a622e4c35807ecc52f854b by Stanislav.Mekhanoshin
Remove assert from MachineLoop::getLoopPredecessor()
According to the documentation method returns predecessor if the given
loop's header has exactly one unique predecessor outside the loop.
Otherwise return null.
In reality it asserts if there is no predecessor outside of the loop.
The testcase has the loop where predecessors outside of the loop were
not identified as analyzeBranch() was unable to process the mask branch
and returned true. That is also not correct to assert for the truly dead
loops.
Differential Revision: https://reviews.llvm.org/D67634
llvm-svn: 372405
The file was modifiedllvm/include/llvm/Analysis/LoopInfoImpl.h (diff)
The file was addedllvm/test/CodeGen/AMDGPU/loop_header_nopred.mir
Commit ae685e7aab7f278cf197b8b1b1ccf76a6e884682 by Saleem Abdulrasool
Unwind: prevent unw_get_proc_info from returning stale data
If unwind info is not available at the current IP, unw_get_proc_info
should return a zero-filled structure rather than the info of the
previous IP.
This change also makes unw_get_proc_info return UNW_ENOINFO instead of
UNW_ESUCCESS.
Patch by Amanieu d'Antras!
llvm-svn: 372407
The file was modifiedlibunwind/test/libunwind_01.pass.cpp (diff)
The file was modifiedlibunwind/src/UnwindCursor.hpp (diff)