[clang] Unify -mspeculative-load-hardening as a benign compiler option (#166640)
Before this patch, compilations using modules &
`-mspeculative-load-hardening` failed because it was not consistent
whether this option impacts module compatibility.
This repairs it by always treating it as benign. This was determined by
checking if the option enables any kind of preprocessor checks and
comparing how the compiler handles a similar option that impacts codegen
(-fvisibility=hidden) but is more widely used.
resolves: rdar://163985667
AMDGPU: Delete redundant recursive copy handling code (#157032)
This fixes a regression exposed after
445415219708f9539801018e03282049ca33e0e2.
This introduces a few small regressions for true16. There are more cases
where the value can propagate through subregister extracts which need
new handling. They're also small enough that perhaps there's a way to
avoid needing to deal with this case in the first place.
[compiler-rt][Profile] Temporarily Disable Test on AIX
This was very hackily patched in
16ef893e9fdec2b08dafc82f5450b41834e09039 to not use env -u. The internal
shell does not support unset, but does supprt env -u. Disable the test
for now so we can enable the internal shell with a TODO to enable it
after the internal shell landing has stuck.
Reviewers: fmayer, vitalybuka, w2yehia, daltenty, mingmingl-llvm, madanial0
Reviewed By: mingmingl-llvm
Pull Request: https://github.com/llvm/llvm-project/pull/166637
[LSCFG][profcheck] Add dummy branch weights for the dummy switch to dead exits (#164714)
As noted in the doc comment of `handleDeadExits`, the dummy switch is just an artifact of the constraints placed by the fact that we operate in a loop pass. Adding weights here is unnecessary, but the complexity is low, and it helps keep things easy for profile propagation verification (in a sense, the overall complexity would be higher if we special-cased this somehow).
Issue #147390
Add binop-select test to profcheck-xfail.txt (#166678)
Revealed in PR #166102, which itself doesn't _cause_ the profile being
dropped. Referencing if it makes debugging easier.
[flang][acc] Lower zero modifier for Copyout clause (#166660)
From the OpenACC 3.4 Specification:
```
1924 2.7.9 copyout clause
1925 The copyout clause may appear on structured data and compute constructs, on declare di
1926 rectives, and on exit data directives. The clause may optionally have a zero modifier if the
1927 copyout clause appears on a structured data or compute construct.
1928 Only the following modifiers may appear in the optional modifier-list: always, alwaysin or zero.
1929 Additionally, on structured data and compute constructs capture modifier may appear
```
`readonly` is not a legal modifier for the `copyout` clause. The call to
`genDataOperandOperationsWithModifier` should be checking the parsed
modifier for the `copyout` clause against the `Zero` modifier.
Add support for ref.func to AsmParser/MC (#163326)
This is step 1 of exposing WASM `ref.func` to LLVM.
This PR only handles creating the instruction and a test for assembling
it.
[debugserver] Move constants into TaskPortForProcessID (NFC) (#166670)
I was looking at the calls to `usleep` in debugserver and noticed that
these default arguments are never overwritten. I converted them to
constants in the function, which makes it easier to reason about.