improve 'optRemoveRedundantZeroInits' (#50155)
authorSergey Andreenko <seandree@microsoft.com>
Wed, 24 Mar 2021 15:48:08 +0000 (08:48 -0700)
committerGitHub <noreply@github.com>
Wed, 24 Mar 2021 15:48:08 +0000 (08:48 -0700)
commit33f1c3db6f54af45a2da33a9082dfb846ff129e2
treeca545117df055425268ad0e55b7b3c49049dce7d
parentf923d66beea854d9e1853d54d011f5f3e3e2cd9c
improve 'optRemoveRedundantZeroInits' (#50155)

It covers cases like:
```
N006 ( 13, 12) [000019] -A-XG---R---              *  ASG       struct (copy)
N005 (  9,  9) [000018] n-----------              +--*  OBJ       struct<System.Threading.Tasks.ValueTask, 16>
N004 (  3,  5) [000017] ------------              |  \--*  ADDR      byref
N003 (  3,  4) [000014] D------N----              |     \--*  LCL_FLD   struct V03 tmp1         [+0] Fseq[_value]
N002 (  3,  2) [000015] ---XG-------              \--*  IND       struct
N001 (  1,  1) [000000] ------------                 \--*  LCL_VAR   byref  V00 this
```
src/coreclr/jit/optimizer.cpp