SuccessChanges

Summary

  1. CFG: Destroy temporaries in (a,b) expression in the correct order. (details)
  2. [lldb] Modify the `skipIfRemote` decorator so we can skip all PExpect tests. (details)
  3. [lldb] Skip TestProcessConnect when running remotely (details)
  4. Add verification for DW_AT_decl_file and DW_AT_call_file. (details)
  5. [mlir] use the new stateful LLVM type translator by default (details)
  6. [lldb] Skip test_launch_simple on Windows (details)
  7. [X86] Add test case for PR47000. NFC (details)
  8. [X86] Disable copy elision in LowerMemArgument for scalarized vectors when the loc VT is a different size than the original element. (details)
Commit 076b120bebfd727b502208601012a44ab2e1028e by richard
CFG: Destroy temporaries in (a,b) expression in the correct order.
The file was modifiedclang/test/Analysis/cfg.cpp
The file was modifiedclang/lib/Analysis/CFG.cpp
Commit df46f174db5bbedb66d77041308d48e701c77e96 by Jonas Devlieghere
[lldb] Modify the `skipIfRemote` decorator so we can skip all PExpect tests.

This patch modifies the skipIfRemote decorator so it can apply to a
whole class, which allows us to skip all PExpect tests as a whole.

Differential revision: https://reviews.llvm.org/D85365
The file was modifiedlldb/test/API/commands/gui/basic/TestGuiBasic.py
The file was modifiedlldb/test/API/driver/batch_mode/TestBatchMode.py
The file was modifiedlldb/test/API/commands/gui/breakpoints/TestGuiBreakpoints.py
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbpexpect.py
The file was modifiedlldb/test/API/commands/expression/multiline-completion/TestMultilineCompletion.py
The file was modifiedlldb/test/API/commands/gui/basicdebug/TestGuiBasicDebug.py
The file was modifiedlldb/packages/Python/lldbsuite/test/decorators.py
Commit 31137b87efc12b1d8cdd8307bcddb986e5c23c61 by Jonas Devlieghere
[lldb] Skip TestProcessConnect when running remotely

This test doesn't make much sense when already running remotely.
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py
Commit e1de85f9f4dae68b2c83d8821515c1f5db765baa by gclayton
Add verification for DW_AT_decl_file and DW_AT_call_file.

LTO builds have been creating invalid DWARF and one of the errors was a file index that was out of bounds. "llvm-dwarfdump --verify" will check all file indexes for line tables already, but there are no checks for the validity of file indexes in attributes.

The verification will verify if there is a DW_AT_decl_file/DW_AT_call_file that:
- there is a line table for the compile unit
- the file index is valid
- the encoding is appropriate

Tests are added that test all of the above conditions.

Differential Revision: https://reviews.llvm.org/D84817
The file was addedllvm/test/tools/llvm-dwarfdump/X86/verify_file_encoding.yaml
The file was addedllvm/test/tools/llvm-dwarfdump/X86/verify_attr_file_indexes_no_files.yaml
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/verify_debug_info.s
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
The file was addedllvm/test/tools/llvm-dwarfdump/X86/verify_attr_file_indexes.yaml
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
Commit b2ab375d1f08ab0faecc20f0340cb972f31010a7 by zinenko
[mlir] use the new stateful LLVM type translator by default

Previous type model in the LLVM dialect did not support identified structure
types properly and therefore could use stateless translations implemented as
free functions. The new model supports identified structs and must keep track
of the identified structure types present in the target context (LLVMContext or
MLIRContext) to avoid creating duplicate structs due to LLVM's type
auto-renaming. Expose the stateful type translation classes and use them during
translation, storing the state as part of ModuleTranslation.

Drop the test type translation mechanism that is no longer necessary and update
the tests to exercise type translation as part of the main translation flow.

Update the code in vector-to-LLVM dialect conversion that relied on stateless
translation to use the new class in a stateless manner.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D85297
The file was modifiedmlir/tools/mlir-translate/mlir-translate.cpp
The file was modifiedmlir/include/mlir/Target/LLVMIR/TypeTranslation.h
The file was modifiedmlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
The file was modifiedmlir/lib/Target/LLVMIR/TypeTranslation.cpp
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
The file was modifiedmlir/test/Target/llvmir-types.mlir
The file was modifiedmlir/test/lib/CMakeLists.txt
The file was removedmlir/test/lib/Target/CMakeLists.txt
The file was modifiedmlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
The file was removedmlir/test/lib/Target/TestLLVMTypeTranslation.cpp
The file was modifiedmlir/lib/Target/LLVMIR/ModuleTranslation.cpp
The file was modifiedmlir/test/Target/import.ll
Commit 927afdffbb1deebd83b86d024b67687d758521d0 by Jonas Devlieghere
[lldb] Skip test_launch_simple on Windows

Because stdio manipulation unsupported on Windows.
The file was modifiedlldb/test/API/python_api/target/TestTargetAPI.py
Commit 13796d14238baabff972e15ceddb4ae61b1584b8 by craig.topper
[X86] Add test case for PR47000. NFC
The file was addedllvm/test/CodeGen/X86/pr47000.ll
Commit 08b2d0a963dbbf54317a137d69f430b347d1bfae by craig.topper
[X86] Disable copy elision in LowerMemArgument for scalarized vectors when the loc VT is a different size than the original element.

For example a v4f16 argument is scalarized to 4 i32 values. So
the values are spread out instead of being packed tightly like
in the original vector.

Fixes PR47000.
The file was modifiedllvm/test/CodeGen/X86/pr47000.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp