[libc++] Fix shared_ptr(Y*) constraint check on GCC (#199429)
GCC has fixed SFINAEing on `delete` since at least GCC 11, so we can
properly constrain the constructor.
[Mips] Remove mips from omitting the frame pointer for Linux (#199381)
6b1f976858eea5a64f058ca48873be834bd79569 enabled omitting
the frame pointer no matter what OS so remove the now redundancy
with having this on the Linux path.
[llubi] Print out inst location in stack trace (#199430)
This patch appends `file:line number` to each frame in the stack trace.
It would improve the debugging experience.
In all test files, the inputs are supplied via stdin. I think it should
be okay, as I don't need to add wildcards for filenames.
[AMDGPU] Introduce ABI occupancy for object linking
This PR introduces ABI occupancy as the contract used to compile functions under
object linking. The default is derived from the occupancy needed for a 1024
workitem workgroup, can be overridden with `-amdgpu-abi-waves-per-eu`, and can
be overridden per function by `amdgpu-flat-work-group-size` or tightened by an
accepted `amdgpu-waves-per-eu` hint.
The backend emits the selected occupancy in `.amdgpu.info` and uses it to
enforce the object linking register budget.
[clang] preserve exact redeclaration for getTemplateInstantiationPattern
This makes these functions not always return the definition if any.
The few users which depend on this are updated to fetch the definition
themselves.
Also fixes the VarDecl variant returning the queried declaration itself.
[AIX] Re-apply: Remove unsupported AIX native echo option -n by using printf (#199395)
AIX native echo doesn't support the `-n` flag.
Use `printf` instead to ensure the test works across all systems and
making it portable.
The current test fails as follows:
```
FAIL: lit :: unit/Util.py (1 of 1)
******************** TEST 'lit :: unit/Util.py' FAILED ********************
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
"/opt/freeware/bin/python3.12" /home/himadhit/llvm/community/build/utils/lit/tests/unit/Util.py
# executed command: /opt/freeware/bin/python3.12 /home/himadhit/llvm/community/build/utils/lit/tests/unit/Util.py
# .---command stderr------------
# | F..
[16 lines not shown]
[ConstantHoisting] Avoid DenseMap reference invalidated by insertion (#199468)
Fix https://reviews.llvm.org/D28962 : DenseMap does not promise to keep
references stable across insertion. This happens to work today because
we don't do bucket eviction.
Pre-populate every node up front.
[clang] implement CWG2064: ignore value dependence for decltype
The 'decltype' for a value-dependent (but non-type-dependent) should be known,
so this patch makes them non-opaque instead.
This patch also implements what's neceessary to allow overloading
on pure differences in instantiation dependence, making `std::void_t`
usable for SFINAE purposes.
This also readds a few test cases from da98651, which was a previous attempt
at resolving CWG2064.
Fixes #8740
Fixes #61818
Fixes #190388
[clang] NFC: add some new test cases (#199467)
These are extracted from my current and future PRs.
They don't have much to do with the PRs themselves except that they were
regressions our test suite missed catching.
[clang] NFC: add some new test cases
These are extracted from my current and future PRs.
They don't have much to do with the PRs themselves except that
they were regressions our test suite missed catching.
[libc++][test] Move backported algorithms to `libcxx/test/support` (#199431)
And namespace `util`. This will make helpers provided more consistently,
and potentially allow us to unify test helper namespaces in the future.
[LV] Handle chained selects/blends when creating new rdx chain. (#199443)
Make sure we recursively clone chains of selects/blends when re-creating
a reduction chain with new types.
Fixes https://github.com/llvm/llvm-project/issues/199406.
[NFC][AArch64][Cyclone] Model WriteSTP with a local SchedWriteRes (#198844)
Cyclone scheduling model uses SchedAlias between 2 SchedWriteRes
definitions from AArch64Schedule.td.
This prevents other scheduling models from aliasing WriteSTP. This patch
address the issue by defining a new CyWriteSTP and using that instead.
[VPlan] Simplify VPSCEVExpander, clarify naming/comments (NFC). (#199423)
Address post-commit comments from
https://github.com/llvm/llvm-project/pull/189455,
removing unneeded member, and clarify naming/comments to stress the
current logic tries to expand a SCEV to VPInstructions, with only a small
sub-set of SCEV expression supported.