Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

tannergooding
Copy link
Member

@tannergooding tannergooding commented Jul 9, 2024

These were found by antigen (https://dev.azure.com/dnceng-public/public/_build/results?buildId=732346&view=ms.vss-build-web.run-extensions-tab), however the test cases are massive and often not trivially simplified so there isn't an easy way to add regression coverage here.

@ghost ghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Jul 9, 2024
Copy link
Contributor

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

@tannergooding tannergooding changed the title Ensure that we create a valid GT_IND node Fix various asserts that were found by Antigen Jul 9, 2024
Comment on lines +4215 to +4218
case INS_vbroadcastf32x8:
case INS_vbroadcasti32x8:
case INS_vbroadcasti64x4:
case INS_vbroadcastf64x4:
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These return TYP_SIMD64 but take in TYP_SIMD32 and so we generated wrong disassembly and asserted when validating the alignment of the memory operand.

@tannergooding tannergooding marked this pull request as ready for review July 10, 2024 00:56
@tannergooding
Copy link
Member Author

CC. @dotnet/jit-contrib This should be ready for review and fixes a few asserts that were caught by antigen.

SPMI replay failure is #104585

@tannergooding
Copy link
Member Author

Rerunning now that the SPMI replay issue should be fixed.

@kunalspathak
Copy link
Contributor

Can we add some test cases, if they were just caught by Antigen but not by P0/P1 test suite?

@tannergooding tannergooding merged commit 8ba8249 into dotnet:main Jul 11, 2024
@tannergooding tannergooding deleted the antigen branch July 11, 2024 07:16
@tannergooding
Copy link
Member Author

Can we add some test cases, if they were just caught by Antigen but not by P0/P1 test suite?

It was explicitly commented at the top that most of these were not something for which simplified reproduction could be identified.

They often repro because the antigen source generated is massive and impacts the JIT in weird ways, particularly in how some optimizations/transforms may light up for parts of a method, but not the rest.

For most of them, the JIT never gets to an incorrect sequence otherwise because everything else was already correct or would be coerced to be correct under the default transforms

@tannergooding
Copy link
Member Author

Happy for tests to be added if someone knows a way to coerce the JIT to do the right partial transforms here, but I had already spent a couple hours playing around with C# that should trigger it but wouldn’t, even with some of the config knobs that do things like disable vn or cse to try and get it into the right shape for codegen/lowering

@github-actions github-actions bot locked and limited conversation to collaborators Aug 10, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants