[lldb-dap] Add valueLocationReference for member function pointers (#186837)
Added `valueLocationReference` for member function pointers. Also
changed `GetValueAsAddress`, because original implementation doesn't
work for member function pointers.
[LoongArch] Support VBIT{CLR,SET,REV}I patterns for non-native element sizes
Extend vsplat_uimm_{pow2,inv_pow2} matching to allow specifying an explicit
element bit width, enabling recognition of splat patterns whose logical
element size differs from the vector's native element type.
Introduce templated selectVSplatUimm{Pow2,InvPow2} helpers with an optional
EltSize parameter, and add corresponding ComplexPattern definitions for
i8/i16/i32 element widths. This allows TableGen patterns to match cases such
as operating on v8i32/v4i64 vectors with masks derived from smaller element
sizes (e.g. i16).
With these changes, AND/OR/XOR operations using inverse power-of-two or
power-of-two splat masks are now correctly selected to VBITCLRI, VBITSETI,
and VBITREVI instructions instead of falling back to vector logical
operations with materialized constants.
[RISCV][NFC] Rename isZipEven/isZipOdd to isPairEven/isPairOdd (#193674)
To match the terminologies in Zvzip extension.
And some comments are changed accordingly.
Revert "[clang][modules-driver] Add support for C++ named modules and `import std`" (#193677)
Reverts llvm/llvm-project#193312 due to a failing test
(Driver/modules-driver-import-std.cpp)
Reland: [LowerTypeTests] Add debug info to jump table entries (#193670)
When Control Flow Integrity (CFI) is enabled, jump tables are used to
redirect indirect calls. Previously, these jump table entries lacked
debug information, making it difficult for profilers and debuggers to
attribute execution time correctly.
Now stack trace, when stopped on jump table entry will looks like this:
```
#0: __ubsan_check_cfi_icall_jt at sanitizer/ubsan_interface.h:0
#1: c::c() (.cfi_jt) at sanitizer/ubsan_interface.h:0:0
#2: .cfi.jumptable.81 at sanitizer/ubsan_interface.h:0:0
```
This is reland of #192736, reverted with #193663.
This version don't update debug info for "Cross-DSO CFI" mode.
[mlir][LLVMIR] Extend FP array-splat constant lowering (#192378)
Handle floating-point compatible array splats in the ConstantDataArray
path using bit-pattern based ConstantDataArray::getFP construction,
instead of only specializing integer element types.
[clang][modules-driver] Add support for C++ named modules and `import std` (#193312)
This patch adds basic support for explicit C++ named module builds,
managed natively by the Clang driver, including support for use of the
Standard library modules.
This follows #187606, which adds the same for Clang modules.
Current limitations:
- Standard library modules are still compiled to object files instead of
using the provided shared library. (This will be addressed in a
follow-up soon.)
- Caching is not supported yet (but likely to be added during the
upcoming GSoC cycle).
- Importing C++ standard library modules into Clang modules is not
supported (and not expected in the near term).
RFC:
https://discourse.llvm.org/t/rfc-modules-support-simple-c-20-modules-use-from-the-clang-driver-without-a-build-system