[Dexter] Require lldb-dap for Dexter and log when Dexter is disabled (#206734)
For some time, Dexter tests have been run using lldb-dap when it is
available rather than just lldb/lldb-server. However, the cross project
test dependencies have not been updated since then, meaning that
lldb-dap is not automatically built by check-cross-project. The
Dexter-specific lit config then skips the Dexter tests if lldb-dap is
unavailable, which leads to some check-cross-project builds never
running the Dexter tests. This patch adds lldb-dap to the build
dependencies, and also adds a small log message to inform when the
Dexter tests are skipped; most cases where we skip the Dexter test were
already logged, and this addition expands that to cover all cases.
[PGO][NFC] Avoid floating-point block uniformity check (#206547)
Use an integer threshold when deciding whether a block is mostly
uniform.
This keeps the 90% rule exact and avoids relying on floating-point
arithmetic in profile merging.
[NFC][AMDGPU] Use SIInstrFlags predicates in CodeGen passes (#204829)
Replace raw TSFlags accesses with SIInstrFlags predicate calls.
Part of a series following the introduction of SIInstrFlags predicates.
[Darwin][TSan] Fix false positive race report when using dispatch_apply (#204866)
Currently I have seen some false positive race reports caused by
instrumented block copy code that writes after the release-annotation.
When the block runs on another thread and reads the copied data, it
incorrectly reports this as a race.
This patch casts the block to a `void *` in order to avoid the block
copy - thus avoiding the reported race. This is safe because
`dispatch_apply` runs synchronously, so the block lives beyond all
invocations.
rdar://92286127
[lit] Fix builtin diff importing system lit.util in subprocess mode (#206723)
'import lit.util' silently picks up a system-installed lit package
instead of the local one, which may lack abs_path_preserve_drive.
Switch to 'from .. import util': in subprocess mode __package__ is None,
so the relative import raises ImportError and the fallback correctly
picks up the local util.py via PYTHONPATH
Signed-off-by: Prasoon Kumar <prasoonkumar054 at gmail.com>
[LoopInterchange] Add test with dependency `[* =]` and `[= *]` (NFC) (#193479)
Add test cases that are legal to interchange but currently cannot be
interchanged due to restrictions in the legality check.
[clang][bytecode] Check pointer types in ::toRValue() (#206712)
Now that we let more reinterpret_casts through, we need to check we have
the proper type here, too. We already did that for some of the types but
not for records and arrays.
[LIBC][ARM] Enable MMU setup and alignment fault handling during startup. (#204803)
This change adds MMU initialisation for Arm targets and configures
alignment fault behaviour.
This patch:
1. Add MMU setup for AArch64 startup.
- Create a minimal flat-mapped translation table.
- Configure TTBR0_EL1, MAIR_EL1, and TCR_EL1.
- Mark stack/heap memory as execute-never (XN) when possible.
- Enable the MMU and configure alignment checking through SCTLR_EL1.
2. Add MMU setup for ARMA startup:
- Create a flat 1 MB section mapping covering the address space.
- Configure DACR, TTBCR, and TTBR0.
- Enable MMU, instruction cache, and data cache.
- Configure alignment fault handling through SCTLR.
3. Enable unaligned access trapping on Arm M-profile targets when
[7 lines not shown]
[AArch64][llvm] POE2: remove TPMAXn_ELn/TPMINn_ELn and create TPCRn_ELn registers
Some POE2 system registers have been removed/created:
* `TPMAXn_ELn`/`TPMINn_ELn` system registers are now removed
* these encodings are reused in new `TPCRn_ELn` system registers
Adjusted testcases as appropriate.
[AArch64][llvm] Generate asm parser extension map from TableGen (NFC)
Modify ARMTargetDefEmitter to emit the assembly parser `ExtensionMap[]`
and replace the hand-written table in AArch64AsmParser.cpp with the
generated one.
Keep the assembly parser-only quirks in the emitter: the directive
denylist, the legacy primary spellings for `mte` and `compnum`, and the
extra bits needed for the `sve2-*` shorthand extensions.
This removes the duplicate manual table while preserving existing
directive parsing and required-feature diagnostics.