SuccessChanges

Summary

  1. [lldb] [test] Fix DW_TAG_GNU_call_site-DW_AT_low_pc.s relocation (details)
  2. [Clang] Remove run-lines which use opt to run -ipconstprop. (details)
  3. [StackSafety, NFC] Don't insert empty objects into the map (details)
  4. Recommit "[IPConstProp] Remove and move tests to SCCP." (details)
  5. [Bindings] Remove ipc_propagation. (details)
  6. Reland D64327 [MC][ELF] Allow STT_SECTION referencing SHF_MERGE on REL targets (details)
Commit e6c2c9a7d15171a57c98024511eaa8885f1bd5fd by jan.kratochvil
[lldb] [test] Fix DW_TAG_GNU_call_site-DW_AT_low_pc.s relocation

I have made the DW_FORM_ref4 relative. One could also use relocated
DW_FORM_ref_addr instead.

Tested with:
        echo 'void f(){}'|clang -o 1.o -c -Wall -g -x c -;./bin/clang -o 1 1.o ../llvm-monorepo/lldb/test/Shell/SymbolFile/DWARF/DW_TAG_GNU_call_site-DW_AT_low_pc.s;./bin/lldb --no-lldbinit ./1 -o r -o 'p p' -o exit
The file was modifiedlldb/test/Shell/SymbolFile/DWARF/DW_TAG_GNU_call_site-DW_AT_low_pc.s
Commit 00a0282ff8f9a790e93c19ef6fa3758e209cdbe6 by flo
[Clang] Remove run-lines which use opt to run -ipconstprop.

ipconstprop is going to get removed and checking opt with specific
passes makes the tests more fragile.

The tests retain the important checks that !callback metadata is created
correctly.
The file was modifiedclang/test/CodeGen/callback_annotated.c
The file was modifiedclang/test/CodeGen/callback_openmp.c
The file was modifiedclang/test/CodeGen/callback_pthread_create.c
Commit 08cf49658c1da891fb2b2cb577a89a4d6d1a7adc by Vitaly Buka
[StackSafety, NFC] Don't insert empty objects into the map

Result should be the same but it makes generateParamAccessSummary 5x
faster.
The file was modifiedllvm/lib/Analysis/StackSafetyAnalysis.cpp
Commit 599955eb56ebad50c12422cb6194a2da770902a0 by flo
Recommit "[IPConstProp] Remove and move tests to SCCP."

This reverts commit 59d6e814ce0e7b40b7cc3ab136b9af2ffab9c6f8.

The cause for the revert (3 clang tests running opt -ipconstprop) was
fixed by removing those lines.
The file was removedllvm/test/Transforms/IPConstantProp/multiple_callbacks.ll
The file was addedllvm/test/Transforms/SCCP/arg-count-mismatch.ll
The file was addedllvm/test/Transforms/SCCP/multiple_callbacks.ll
The file was modifiedllvm/bindings/ocaml/transforms/ipo/ipo_ocaml.c
The file was addedllvm/test/Transforms/SCCP/arg-type-mismatch.ll
The file was addedllvm/test/Transforms/SCCP/pthreads.ll
The file was addedllvm/test/Transforms/SCCP/return-constant.ll
The file was modifiedllvm/include/llvm/LinkAllPasses.h
The file was addedllvm/test/Transforms/SCCP/thread_local_acs.ll
The file was removedllvm/test/Transforms/IPConstantProp/deadarg.ll
The file was modifiedllvm/test/Transforms/SCCP/comdat-ipo.ll
The file was modifiedllvm/bindings/go/llvm/transforms_ipo.go
The file was modifiedllvm/bindings/ocaml/transforms/ipo/llvm_ipo.mli
The file was removedllvm/test/Transforms/IPConstantProp/return-constants.ll
The file was removedllvm/test/Transforms/IPConstantProp/arg-count-mismatch.ll
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was addedllvm/test/Transforms/SCCP/PR43857.ll
The file was removedllvm/test/Transforms/IPConstantProp/arg-type-mismatch.ll
The file was addedllvm/test/Transforms/SCCP/return-constants.ll
The file was modifiedllvm/lib/Transforms/IPO/CMakeLists.txt
The file was removedllvm/test/Transforms/IPConstantProp/2008-06-09-WeakProp.ll
The file was addedllvm/test/Transforms/SCCP/recursion.ll
The file was removedllvm/test/Transforms/IPConstantProp/thread_local_acs.ll
The file was addedllvm/test/Transforms/SCCP/2008-06-09-WeakProp.ll
The file was removedllvm/test/Transforms/IPConstantProp/return-argument.ll
The file was addedllvm/test/Transforms/SCCP/deadarg.ll
The file was removedllvm/test/Transforms/IPConstantProp/comdat-ipo.ll
The file was addedllvm/test/Transforms/SCCP/naked-return.ll
The file was modifiedllvm/include/llvm-c/Transforms/IPO.h
The file was removedllvm/test/Transforms/IPConstantProp/naked-return.ll
The file was removedllvm/test/Transforms/IPConstantProp/openmp_parallel_for.ll
The file was addedllvm/test/Transforms/SCCP/return-argument.ll
The file was modifiedllvm/lib/Transforms/IPO/IPO.cpp
The file was modifiedllvm/docs/Passes.rst
The file was modifiedllvm/include/llvm/Transforms/IPO.h
The file was removedllvm/test/Transforms/IPConstantProp/return-constant.ll
The file was removedllvm/lib/Transforms/IPO/IPConstantPropagation.cpp
The file was addedllvm/test/Transforms/SCCP/openmp_parallel_for.ll
The file was removedllvm/test/Transforms/IPConstantProp/pthreads.ll
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn
The file was removedllvm/test/Transforms/IPConstantProp/PR43857.ll
The file was modifiedllvm/utils/findoptdiff
The file was removedllvm/test/Transforms/IPConstantProp/recursion.ll
Commit 4ffa6a27aca17fe88fa6bdd605b198df6632a570 by flo
[Bindings] Remove ipc_propagation.

IPConstantPropagation has been removed, also remove the bindings.
The file was modifiedllvm/bindings/ocaml/transforms/ipo/llvm_ipo.ml
The file was modifiedllvm/test/Bindings/OCaml/ipo.ml
Commit b497665d98ad5026b1d3d67d5793a28fefe27bea by i
Reland D64327 [MC][ELF] Allow STT_SECTION referencing SHF_MERGE on REL targets

This drops a GNU gold workaround and reverts the revert commit rL366708.

  Before binutils 2.34, gold -O2 and above did not correctly handle R_386_GOTOFF to
  SHF_MERGE|SHF_STRINGS sections: https://sourceware.org/bugzilla/show_bug.cgi?id=16794

From the original review:

  ... it reduced the size of a big ARM-32 debug image by 33%. It contained ~68M
  of relocations symbols out of total ~71M symbols (96% of symbols table was
  generated for relocations with symbol).

-Wl,-O2 (and -Wl,-O3) is so rare that we should just lower the
optimization level for LLVM_LINKER_IS_GOLD rather than pessimizing all users.
The file was modifiedllvm/test/MC/ELF/compression.s
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
The file was modifiedllvm/test/MC/Mips/elf-relsym.s
The file was modifiedllvm/test/MC/Mips/xgot.s
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
The file was modifiedllvm/test/MC/ELF/basic-elf-32.s
The file was modifiedllvm/test/MC/ELF/relocation-386.s