SuccessChanges

Summary

  1. [lldb][tests] Posix function strdup requires macro _POSIX_C_SOURCE (details)
  2. [lldb][tests] Platform triple can be None (details)
  3. [lldb][NFC] Simplify if-return (details)
  4. [lldb][NFC] Add "lldb-vscode" to all_categories (details)
  5. [lldb][NFC] Move lock scope where it should begin (details)
  6. [lldb] Specify unsigned underlying type for an enumeration explicitly (details)
  7. [lldb][test] Don't include "test_common.h" in the debug macros test (details)
  8. [libcxx] Fix a typo in config.py (details)
  9. Partially revert "Add initial tests for (details)
  10. [X86] Add avx512f and avx512dq+vl command lines to the vector strictfp (details)
  11. [X86] Add test cases for v2i64->v2f32 (details)
  12. [X86] Add custom lowering for v2i64->v2f32 (details)
  13. [X86] Merge the SINT_TO_FP/UINT_TO_FP handlers in ReplaceNodeResults (details)
  14. [OpenMP][NFCI] Use the libFrontend ProcBindKind in Clang (details)
  15. [BPF] Enable relocation location for load/store/shifts (details)
  16. [Attributor] Add helper to change an instruction to `unreachable` inst (details)
  17. [ELF] Support input section description .gnu.version* in /DISCARD/ (details)
Commit f57b35af2f00791d1203080c43ca1d87db6cad41 by Tatyana Krasnukha
[lldb][tests] Posix function strdup requires macro _POSIX_C_SOURCE
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/exec/main.cpp
Commit a58bd0e42cf21a80c0f2c69bddf8fe32b6e99a40 by Tatyana Krasnukha
[lldb][tests] Platform triple can be None
If a remote target is not connected, SBPlatform's GetTriple function
returns None.
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbplatformutil.py
Commit 04359f48f02105d15ad1dd7e8d83801260794e18 by Tatyana Krasnukha
[lldb][NFC] Simplify if-return
The file was modifiedlldb/packages/Python/lldbsuite/test/api/command-return-object/main.cpp
Commit b7c45ac35295f4d90cdc9430ab159c3b396e75ee by Tatyana Krasnukha
[lldb][NFC] Add "lldb-vscode" to all_categories
Required to make the category manually disableable.
The file was modifiedlldb/packages/Python/lldbsuite/test/test_categories.py
Commit b0469eede2857f8c15bbec3db7605f699324befb by Tatyana Krasnukha
[lldb][NFC] Move lock scope where it should begin
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
Commit e2d3eb00ccd8bd789636464791f4acdd6e0c4583 by Tatyana Krasnukha
[lldb] Specify unsigned underlying type for an enumeration explicitly
The enumeration EntryType is used as a bit field of DebugMacroEntry:
```
EntryType m_type : 3
```
Since underlying type of enumeration is implementation-dependent, a
signed integer is converted to the 3-bit value by some compilers (MSVC).
That's why a DebugMacroEntry instance that was created with EntryType
value > 3 (END_FILE or INDIRECT) contains incorrect negative value in
its m_type data-member.
The file was modifiedlldb/include/lldb/Symbol/DebugMacros.h
Commit db1fa62bf8241cc623b63feca2cfae7d79da6577 by Tatyana Krasnukha
[lldb][test] Don't include "test_common.h" in the debug macros test
GCC produces incorrect .debug_macro section when "-include" option is
used: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93075.
The file was modifiedlldb/packages/Python/lldbsuite/test/commands/expression/macros/Makefile
Commit e308a0ca15a5eb0093cc2f92f68cd411f6f0f8a8 by jaskiewiczs
[libcxx] Fix a typo in config.py
Reviewers: ldionne, jroelofs, EricWF
Subscribers: christof, dexonsmith, libcxx-commits
Tags: #libc
Differential Revision: https://reviews.llvm.org/D71890
The file was modifiedlibcxx/utils/libcxx/test/config.py
Commit 287307a0c60b68099d5f9dd22ac1db2a42593533 by rnk
Partially revert "Add initial tests for
update_{llc_,cc_,}test_checks.py"
This reverts part of commit 240aff80e0e59b79779d046b3275904fc0750d59. It
reverts cc802ea67beb66d2f8a935e647c3aedcf7848211.
We currently run LLVM tests in environments where python3 exists on
PATH, but it is broken. I don't think PATH discovery is a strong enough
signal that a working Python 3 installation exists.
If this will be the way forward, IMO we should follow the direction of
debug-info-tests, and use CMake's PYTHON_EXECUTABLE, which in the near
future will be a known-to-work Python 3 executable. If it's not Python
3, then we don't have to run this test.
The file was removedllvm/test/tools/UpdateTestChecks/update_cc_test_checks/mangled_names.test
The file was removedllvm/test/tools/UpdateTestChecks/update_cc_test_checks/Inputs/mangled_names.c
The file was modifiedllvm/test/tools/UpdateTestChecks/lit.local.cfg
The file was removedllvm/test/tools/UpdateTestChecks/update_cc_test_checks/Inputs/mangled_names.c.expected
The file was removedllvm/test/tools/UpdateTestChecks/update_cc_test_checks/Inputs/mangled_names.c.funcsig.expected
The file was removedllvm/test/tools/UpdateTestChecks/update_cc_test_checks/lit.local.cfg
Commit de60c2633b49249e601bcc2aedd9c4dc0521a314 by craig.topper
[X86] Add avx512f and avx512dq+vl command lines to the vector strictfp
int<->fp tests.
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-128.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-inttofp-128.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-inttofp-256.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-256.ll
Commit 7f071958cde4f168823b4d9cfb9d507e69de88cb by craig.topper
[X86] Add test cases for v2i64->v2f32
strict_sint_to_fp/strict_uint_to_fp.
The file was modifiedllvm/test/CodeGen/X86/vec-strict-inttofp-128.ll
Commit 4e6b0dd6818796b584a9c97f677d6d7e92e4b1c2 by craig.topper
[X86] Add custom lowering for v2i64->v2f32
strict_sint_to_fp/strict_uint_to_fp for avx512dq+avx512vl targets.
With avx512dq+avx512vl we have instruction that implements this and
places zeroes in the upper 64-bits of the destination xmm register.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vec-strict-inttofp-128.ll
Commit c91bf72e2cd0ec164c36b464b5af645538000b04 by craig.topper
[X86] Merge the SINT_TO_FP/UINT_TO_FP handlers in ReplaceNodeResults
since the AVX512DQ+AVX512VL code is very similar in both. NFC
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 6c5d1f40ff8deb2c001736c5a5bc085322910ad1 by johannes
[OpenMP][NFCI] Use the libFrontend ProcBindKind in Clang
This removes the OpenMPProcBindClauseKind enum in favor of
llvm::omp::ProcBindKind which lives in OpenMPConstants.h and was
introduced in D70109.
No change in behavior is expected.
Reviewed By: JonChesterfield
Differential Revision: https://reviews.llvm.org/D70289
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeNVPTX.h
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.h
The file was modifiedclang/include/clang/AST/OpenMPClause.h
The file was modifiedllvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
The file was modifiedclang/include/clang/Basic/OpenMPKinds.def
The file was modifiedclang/include/clang/Basic/OpenMPKinds.h
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedllvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
Commit ffd57408efd4c8d455616a5ff4f623250e8580c9 by yhs
[BPF] Enable relocation location for load/store/shifts
Previous btf field relocation is always at assignment like
  r1 = 4 which is converted from an ld_imm64 instruction.
This patch did an optimization such that relocation instruction might be
load/store/shift. Specically, the following insns may also have
relocation, except BPF_MOV:
LDB, LDH, LDW, LDD, STB, STH, STW, STD,
LDB32, LDH32, LDW32, STB32, STH32, STW32,
SLL, SRL, SRA
To accomplish this, a few BPF target specific codegen only instructions
are invented. They are generated at backend BPF SimplifyPatchable phase,
which is at early llc phase when SSA form is available. The new codegen
only instructions will be converted to real proper instructions at the
codegen and BTF emission stage.
Note that, as revealed by a few tests, this optimization might be actual
generating more relocations: Scenario 1:
if (...) {
   ... __builtin_preserve_field_info(arg->b2, 0) ...
} else {
   ... __builtin_preserve_field_info(arg->b2, 0) ...
}
Compiler could do CSE to only have one relocation. But if both
of the above is translated into codegen internal instructions,
the compiler will not be able to do that. Scenario 2:
offset = ... __builtin_preserve_field_info(arg->b2, 0) ...
...
...  offset ...
...  offset ...
...  offset ...
For whatever reason, the compiler might be temporarily do copy
propagation of the righthand of "offset" assignment like
...  __builtin_preserve_field_info(arg->b2, 0) ...
...  __builtin_preserve_field_info(arg->b2, 0) ...
and CSE will be able to deduplicate later.
But if these intrinsics are converted to BPF pseudo instructions,
they will not be able to get deduplicated.
I do not expect we have big instruction count difference. It may
actually reduce instruction count since now relocation is in deeper insn
dependency chain. For example, for test offset-reloc-fieldinfo-2.ll,
this patch generates 7 instead of 6 relocations for non-alu32 mode, but
it actually reduced instruction count from 29 to 26.
Differential Revision: https://reviews.llvm.org/D71790
The file was modifiedllvm/lib/Target/BPF/BTFDebug.h
The file was modifiedllvm/test/CodeGen/BPF/CORE/offset-reloc-end-load.ll
The file was modifiedllvm/test/CodeGen/BPF/CORE/offset-reloc-fieldinfo-1.ll
The file was modifiedllvm/lib/Target/BPF/BPFInstrInfo.td
The file was modifiedllvm/lib/Target/BPF/BTFDebug.cpp
The file was modifiedllvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
The file was modifiedllvm/test/CodeGen/BPF/CORE/offset-reloc-fieldinfo-2.ll
Commit cb5eb13eafdcf2d6ad8dc3a2c7b25eea3948839d by uenoku.tokotoko
[Attributor] Add helper to change an instruction to `unreachable` inst
Summary: Calling `changeToUnreachable` in `manifest` from different
places might cause really unpredictable problems. As other deleting
functions are doing, we need to change these instructions after all
`manifest`.
Reviewers: jdoerfert, sstefan1
Reviewed By: jdoerfert
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71910
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit 1edd9651307112447f83a0cd402ee23125f0fdb3 by maskray
[ELF] Support input section description .gnu.version* in /DISCARD/
Linux powerpc discards `*(.gnu.version*)`
(arch/powerpc/kernel/vmlinux.lds.S) to suppress --orphan-handling=warn
warnings in the -pie output `.tmp_vmlinux1`
The support is simple. Just add isLive() to:
1) Fix an assertion in SectionBase::getPartition() called by
VersionTableSection::isNeeded(). 2) Suppress DT_VERSYM, DT_VERDEF,
DT_VERNEED and DT_VERNEEDNUM, if the relevant section is discarded.
Reviewed By: grimar
Differential Revision: https://reviews.llvm.org/D71819
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was addedlld/test/ELF/linkerscript/discard-gnu-version.s