-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Windows arm] JIT/stress/ABI/tailcall_d / do tests are non-deterministically failing several times a day #70042
Comments
Tagging subscribers to this area: @JulieLeeMSFT Issue DetailsOS: Windows Diagnostics - please note the weird JIT assertion failure at the top even though the test starts running normally: Assert failure(PID 4836 [0x000012e4], Thread: 14564 [0x38e4]): Assertion failed '!"NYI: odd sized struct in fgMorphMultiregStructArg"' in 'DynamicClass:InvokeStub_ABIStress_TailCallee9685(System.Object,System.Object,int):System.Object' during 'Morph - Global' (IL size 68; hash 0x3dc7e6f8; FullOpts) File: D:\a\_work\1\s\src\coreclr\jit\morph.cpp Line: 3847 Image: D:\h\w\B9BF0A0C\p\corerun.exe Return code: 1 Raw output file: D:\h\w\B9BF0A0C\w\A8170972\uploads\Reports\JIT.Stress\ABI\tailcalls_d\tailcalls_d.output.txt Raw output: BEGIN EXECUTION "D:\h\w\B9BF0A0C\p\corerun.exe" -p "System.Reflection.Metadata.MetadataUpdater.IsSupported=false" tailcalls_d.dll --tailcalls --num-calls 1000 --no-ctrlc-summary Stressing tailcalls OSVersion: Microsoft Windows NT 10.0.19044.0 OSArchitecture: Arm64 ProcessArchitecture: Arm Selecting win86 ABI 50 callers done (48 successful tailcalls tested) 100 callers done (99 successful tailcalls tested) 150 callers done (150 successful tailcalls tested) 200 callers done (199 successful tailcalls tested) 250 callers done (250 successful tailcalls tested) 300 callers done (296 successful tailcalls tested) 350 callers done (349 successful tailcalls tested) Expected: 100 Actual: -1073740286 END EXECUTION - FAILED FAILED /cc @dotnet/jit-contrib
|
Underlying problem is #61168, cc @kunalspathak Note #68837 which is the follow-up to #67917 that disabled these tests, but presumably they were only disabled on linux-arm32. |
* JIT ARM32: Fix odd sized structs from arbitrary sources ARM32 ABI allows passing structs in register even when their sizes are not divisible by 4. This means we sometimes need to pass 3 bytes in the last register. The JIT would not handle this when the source was an arbitrary memory location (this would require multiple loads and shifts). The fix is to just force a copy into the local stack frame for this case. Fix #61168 * Reenable ABI tests Fix #68837 Fix #70042
OS: Windows
Architecture: arm[32]
Example run: https://dev.azure.com/dnceng/public/_build/results?buildId=1797398&view=ms.vss-test-web.build-test-results-tab&runId=47968846&resultId=100050&paneView=history
Diagnostics - please note the weird JIT assertion failure at the top even though the test starts running normally:
/cc @dotnet/jit-contrib
The text was updated successfully, but these errors were encountered: