NativeAOT: Loop alignment support for xarch#81206
Conversation
|
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch, @kunalspathak Issue DetailsContributes to #64242
|
src/coreclr/jit/emit.cpp
Outdated
| assert(((size_t)codeBlock & 31) == 0); | ||
| // For NativeAOT, codeBlock will not be necessarily aligned, but it is aligned | ||
| // in final obj file. | ||
| assert((((size_t)codeBlock & 31) == 0) || comp->IsTargetAbi(CORINFO_NATIVEAOT_ABI)); |
There was a problem hiding this comment.
This should check JIT_FLAG_PREJIT instead. This would be a problem for R2R too if/once we enable the alignment for it.
There was a problem hiding this comment.
This would be a problem for R2R too if/once we enable the alignment for it.
Should we go ahead and add loop alignment support for R2R too?
There was a problem hiding this comment.
Should we go ahead and add loop alignment support for R2R too?
@dotnet/crossgen-contrib for thoughts - it would probably make sense to enable loop alignment for composite R2R or large version bubbles, but not sure it's worth it for regular R2R that has other throughput issues - it would probably just be a size regression. We'd probably want a way to control this from the EE side. It feels like it's going to be a question out of scope of this PR, but I'll let crossgen2 owners decide.
|
@dotnet/jit-contrib |
|
Ping. |
Contributes to #64242