Conversation
The `gpu-kernel` calling convention has several restrictions that were not enforced by the compiler until now. Add the following restrictions: 1. Cannot be async 2. Cannot be called 3. Cannot return values, return type must be `()` or `!` 4. Arguments should be primitives, i.e. passed by value. More complicated types can work when you know what you are doing, but it is rather unintuitive, one needs to know ABI/compiler internals. 5. Export name should be unmangled, either through `no_mangle` or `export_name`. Kernels are searched by name on the CPU side, having a mangled name makes it hard to find and probably almost always unintentional.
…bilee Add checks for gpu-kernel calling conv The `gpu-kernel` calling convention has several restrictions that were not enforced by the compiler until now. Add the following restrictions: 1. Cannot be async 2. Cannot be called 3. Cannot return values, return type must be `()` or `!` 4. Arguments should be simple, i.e. passed by value. More complicated types can work when you know what you are doing, but it is rather unintuitive, one needs to know ABI/compiler internals. 5. Export name should be unmangled, either through `no_mangle` or `export_name`. Kernels are searched by name on the CPU side, having a mangled name makes it hard to find and probably almost always unintentional. Tracking issue: rust-lang#135467 amdgpu target tracking issue: rust-lang#135024 ``@workingjubilee,`` these should be all the restrictions we talked about a year ago. cc ``@RDambrosio016`` ``@kjetilkjeka`` for nvptx
…imulacrum std: merge `sys::pal::common` and `sys_common` into `sys::helpers` As per rust-lang#117276, this removes `sys_common` and moves its functionality and that of `sys::pal::common` into a newly created `sys::helpers` module.
…l, r=estebank do not suggest method call removal if it changes receiver type Fixes rust-lang#149487, cc `@estebank`
…est, r=lolbinarycat Update `browser-ui-test` version to `0.23.0` It comes with new features like conditions and an update to `puppeteer`.
|
@bors r+ rollup=never p=5 |
|
☀️ Test successful - checks-actions |
|
📌 Perf builds for each rolled up PR:
previous master: 85c8ff69cb In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 85c8ff6 (parent) -> e8f3cfc (this PR) Test differencesShow 270 test diffsStage 0
Stage 1
Stage 2
(and 162 additional test diffs) Additionally, 8 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard e8f3cfc0de70bf82583591f6656e1fba3140253e --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (e8f3cfc): comparison URL. Overall result: ✅ improvements - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary -2.1%, secondary 1.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeResults (primary -0.1%, secondary -0.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 473.026s -> 472.421s (-0.13%) |
Successful merges:
sys::pal::commonandsys_commonintosys::helpers#150047 (std: mergesys::pal::commonandsys_commonintosys::helpers)browser-ui-testversion to0.23.0#150616 (Updatebrowser-ui-testversion to0.23.0)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup