Uh oh!
There was an error while loading. Please reload this page.
Fix JIT using too wide indirections when returning small structs - #68160
Conversation
ghost
commented
Apr 18, 2022
Tagging subscribers to this area: @JulieLeeMSFT |
Uh oh!
There was an error while loading. Please reload this page.
| GenTree* retVal = ret->gtGetOp1(); | ||
| GenTree* retVal = ret->gtGetOp1(); | ||
| var_types nativeReturnType = comp->info.compRetNativeType; | ||
| // Note: small types are returned as INT. |
There was a problem hiding this comment.
Is that comment still correct with your changes?
There was a problem hiding this comment.
should be still relevant, the following genActualType should upscale all small-types to int
There was a problem hiding this comment.
Right, there are two nodes here, the return and the operand of the return. The return is still wide but the bug was that we were retyping the operand to a wider type, which is wrong.
jakobbotsch
commented
Apr 20, 2022
Failure is dotnet/arcade#9088 |
jakobbotsch
commented
Apr 22, 2022
/backport to release/6.0 |
Started backporting to release/6.0: https://github.com/dotnet/runtime/actions/runs/2206848351 |
Fix#58874
Fix#64802
Fix#68157
We should backport this given the two customer reports.