SuccessChanges

Summary

  1. [AMDGPU] Fix FP/BP spills when MUBUF constant offset exceeded (details)
  2. [lldb] Improve diagnostics in lldb-repro when replay fails (details)
  3. Revert "[ARM] Fix IT block generation after Thumb2SizeReduce with -Oz" (details)
  4. [NFC] Remove unused variables. (details)
  5. [SLC] sprintf(dst, "%s", str) -> strcpy(dst, str) (details)
  6. [DebugInfo] Add -fuse-ctor-homing cc1 flag so we can turn on constructor homing only if limited debug info is already on. (details)
  7. [ConstProp] Handle insertelement constants (details)
  8. [X86][ELF] Prefer lowering MC_GlobalAddress operands to .Lfoo$local for STV_DEFAULT only (details)
  9. [NewPM][CodeGen] Add machine code verification callback (details)
Commit 7d1cb187fbee336e831309ea22d4f2e273331d6d by Austin.Kerbow
[AMDGPU] Fix FP/BP spills when MUBUF constant offset exceeded

If we need a scratch register for the spill don't use the same scratch
register that is being used for the MBUF offset.

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D85772
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/stack-realign.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
Commit 3da939686c216f8d16a6aaae7831f4bb18c83483 by Jonas Devlieghere
[lldb] Improve diagnostics in lldb-repro when replay fails

- Print the replay invocation.
- Keep the reproducer around.
- Return the "opposite" exit code so we don't have to rely on FileCheck
   to fail the test when the expected exit code is non-zero.
The file was modifiedlldb/utils/lldb-repro/lldb-repro.py
Commit 0c390c22a5af485a482de884134097eeee068cfa by david.green
Revert "[ARM] Fix IT block generation after Thumb2SizeReduce with -Oz"

This reverts commit 18279a54b5d3382874924d6a3c7775b7e22598dc as it is
causing some chromium android test problems.
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/constant-hoisting.ll
Commit 097c8fb2cbc10712269508bf8d248acf14232759 by ckennelly
[NFC] Remove unused variables.

These were no longer needed following
96855125e77044b1a5d3c7f0ae90ea3a5cb035c0.

Reviewed By: rupprecht

Differential Revision: https://reviews.llvm.org/D85939
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_posix.cpp
Commit ab9fc8bae805c785066779e76e7846aabad5609e by Dávid Bolvanský
[SLC] sprintf(dst, "%s", str) -> strcpy(dst, str)

Solves 46489
The file was modifiedllvm/test/Transforms/InstCombine/sprintf-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/2010-05-30-memcpy-Struct.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
Commit ae6523cd62a44642390f4f9d9ba9ce17d5bbbc58 by akhuang
[DebugInfo] Add -fuse-ctor-homing cc1 flag so we can turn on constructor homing only if limited debug info is already on.

This adds a cc1 flag to enable constructor homing but doesn't turn on debug
info if it wasn't enabled already (which is what using
-debug-info-kind=constructor does). This will be used for testing, and won't
be needed anymore once ctor homing is used as default / merged into =limited.

Bug to enable ctor homing: https://bugs.llvm.org/show_bug.cgi?id=46537

Differential Revision: https://reviews.llvm.org/D85799
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was addedclang/test/CodeGenCXX/debug-info-ctor-homing-flag.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit 41f49736a9a06650d9d4f1ada21d051585ab7bbe by aeubanks
[ConstProp] Handle insertelement constants

Previously ConstantFoldExtractElementInstruction() would only work with
insertelement instructions, not contants. This properly handles
insertelement constants as well.

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D85865
The file was modifiedllvm/lib/IR/ConstantFold.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/vscale.ll
Commit 4cb016cd2d8467c572b2e5c5d34f376ee79e4ac1 by Ben.Dunbobbin
[X86][ELF] Prefer lowering MC_GlobalAddress operands to .Lfoo$local for STV_DEFAULT only

This patch restricts the behaviour of referencing via .Lfoo$local
local aliases, introduced in https://reviews.llvm.org/D73230, to
STV_DEFAULT globals only.

Hidden symbols via --fvisiblity=hidden (https://gcc.gnu.org/wiki/Visibility)
is an important scenario.

Benefits:

- Improves the size of object files by using fewer STT_SECTION symbols.

- The code reads a bit better (it was not obvious to me without going
  back to the code reviews why the canBenefitFromLocalAlias function
  currently doesn't consider visibility).

- There is also a side benefit in restoring the effectiveness of the
  --wrap linker option and making the behavior of --wrap consistent
  between LTO and normal builds for references within a translation-unit.
  Note: this --wrap behavior (which is specific to LLD) should not be
  considered reliable. See comments on https://reviews.llvm.org/D73230
  for more.

Differential Revision: https://reviews.llvm.org/D85782
The file was modifiedllvm/test/CodeGen/ARM/emutls.ll
The file was modifiedllvm/test/CodeGen/AArch64/emutls.ll
The file was modifiedllvm/lib/IR/Globals.cpp
The file was modifiedllvm/test/CodeGen/X86/tailcallpic3.ll
The file was modifiedllvm/test/CodeGen/X86/tailcallpic1.ll
The file was modifiedllvm/test/CodeGen/X86/2008-03-12-ThreadLocalAlias.ll
The file was modifiedllvm/test/CodeGen/X86/linux-preemption.ll
The file was modifiedllvm/test/CodeGen/X86/semantic-interposition-comdat.ll
The file was modifiedllvm/test/CodeGen/X86/tailccpic1.ll
Commit a5ed20b549782bf284162c712af4673f7cd75222 by Yuanfang Chen
[NewPM][CodeGen] Add machine code verification callback

D83608 need this.

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D85916
The file was modifiedllvm/include/llvm/CodeGen/MachineFunction.h
The file was modifiedllvm/lib/CodeGen/MachineVerifier.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachinePassManager.h
The file was modifiedllvm/lib/CodeGen/MachinePassManager.cpp