Commit d9a7a38
authored
Make all fields in AssertionDscOp1 and AssertionDscOp2 private (#123955)
[No
diffs](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1278933&view=ms.vss-build-web.run-extensions-tab).
This PR effectively makes all fields in `AssertionDsc`,
`AssertionDscOp1` and `AssertionDscOp2` private and exposes them via
public getters with tons of asserts to validate that we use them in the
correct context, I suspect I probably fixed a potential bug along the
way.
Now all assertions are 100% never mutated outside of their Factory
methods (and ReverseEquality one). As a side effect, I slightly
compacted `AssertionDscOp1` with a union, now `AssertionDsc` is 40 bytes
(on 64bit). I think it's possible to shrink it down to 32 bytes.
Also, renamed the fields to match our guidelines (m_)
Also, slightly improved JitDump for assertions.1 parent 2fac8ba commit d9a7a38
File tree
5 files changed
+571
-517
lines changed- src/coreclr/jit
5 files changed
+571
-517
lines changed
0 commit comments