JIT: port extra check to struct of struct of x promotion to relase/2.1
authorAndy Ayers <andya@microsoft.com>
Fri, 27 Jul 2018 18:09:02 +0000 (11:09 -0700)
committerAndy Ayers <andya@microsoft.com>
Tue, 31 Jul 2018 22:29:00 +0000 (15:29 -0700)
commit760418ee6e569697a1c08b6f0296a74a3526c863
treeba693030619e0942d144b06eed6c97d8c9d00ae3
parentc93ca7f84a0986c0498ee2289902b3831b6467fd
JIT: port extra check to struct of struct of x promotion to relase/2.1

Port of #19156.

Avoid promoting structs that contain struct fields that themselves
wrap single simple fields, if those single simple fields are smaller
than their enclosing struct.

Otherwise we run the risk of losing track of the "extra" bytes in the
innner struct.

Addresses #19149.
src/jit/lclvars.cpp
tests/src/JIT/Regression/JitBlue/GitHub_19149/GitHub_19149.cs [new file with mode: 0644]
tests/src/JIT/Regression/JitBlue/GitHub_19149/GitHub_19149.csproj [new file with mode: 0644]