SuccessChanges

Summary

  1. [SmallVector][NFC] Link to ProgrammersManual from SmallVector docs (details)
  2. [AArch64] Lower calls with rv_marker attribute . (details)
  3. [lld][PowerPC][test] Avoid flaky failures (details)
Commit 32910f780df4f5add290f176459648f2326674f5 by scott.linder
[SmallVector][NFC] Link to ProgrammersManual from SmallVector docs

Add a "see also" link from the condensed doxygen description of
`SmallVector` to the more complete description in the ProgrammersManual.
The file was modifiedllvm/include/llvm/ADT/SmallVector.h
Commit a87fccb3ff9c11986d3110d9f77fb0ccea0daf79 by flo
[AArch64] Lower calls with rv_marker attribute .

This patch adds support for lowering function calls with the
rv_marker attribute. The goal is to expand such calls to the
following sequence of instructions:

    BL @fn
    mov x29, x29

This sequence of instructions triggers Objective-C runtime optimizations,
hence we want to ensure no instructions get moved in between them.
This patch achieves that by adding a new CALL_RVMARKER ISD node,
which gets turned into the BLR_RVMARKER pseudo, which eventually gets
expanded into the sequence mentioned above. The sequence is then marked
as instruction bundle, to avoid anything being moved in between.

@ahatanak is working on using this attribute in the front- & middle-end.

Together with the front- & middle-end changes, this should address
PR31925 for AArch64.

Reviewed By: t.p.northover

Differential Revision: https://reviews.llvm.org/D92569
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.h
The file was addedllvm/test/CodeGen/AArch64/call-rv-marker.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
The file was addedllvm/test/CodeGen/AArch64/expand-blr-rvmarker-pseudo.mir
Commit 9b05f1889aa8ca0693b17ce7dd84da3f6fab90da by Jinsong Ji
[lld][PowerPC][test] Avoid flaky failures

This test may fail if there is a new changes to this tests.

The archives are not deleted so the contents from the previous test run
may affect the contents for the current run,
so this will require cleaning up the Output dir or force build of buildbot.

The fix is to put all the objects in the temporary dir that we cleanup every run,
to avoid run-2-run flaky failures.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D93128
The file was modifiedlld/test/ELF/common-archive-lookup.s