-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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
Likely bug in Mac code gen #5798
Comments
The code I have looks fine (in terms of CodeGen). (I evaluated the Linux code, but there is no difference between Linux/MacOS Codegen anyway). This seems to be a crossgen issue (R2R) that is being worked on - generic dictionary support in crossgen R2R. @tmat was gracious to verify that without crossgen (ni image) there is no problem. The failure seems to be only reproducible if crossgen image is used. |
@fadimounir has a PR that will mopst likely address this - support for generic dictionary lookup in R2R.) |
@fadimounir change is unlikely going to fix this. It will allow code for more methods to be saved into R2R images. It is not expected to change any of the code that is being saved today to change. @LLITCHEV Do you have any details why it is failing? (e.g. dump of the incorrect code, etc.) |
Also, @tmat mentioned that the bug repros on Mac only. It does not repro on Linux. |
Yes... That is right. It doesn't repro on Linux. I have dumped the method and everything on Linux and everything looks right. Need to get a Mac and do the same there - get the dump that is. But there should not be differences since the codegen on Linux and Mac is the same. |
@JohnChen0 PTAL |
@tmat I wasn't able to repro this on Mac. Looks like branch |
Closed dotnet/coreclr#4801 via dotnet/coreclr#4883. |
dotnet/roslyn#11042 failed on Mac due to what seems to be a bad code gen.
The PR updates from crossgen version to 1.0.2-rc3-24011-00 to 1.0.2-rc3-24102-00.
The CI script first builds Roslyn and then builds Roslyn again with the Roslyn built in previous step. The second build fails with an assertion. When the following property:
http://source.roslyn.io/#Microsoft.CodeAnalysis/InternalUtilities/MultiDictionary.cs,98
is rewritten to
The build passes.
So it seems that the code gen doesn't generate code for
Nullable<int>
in generic struct (the containing type).Repro:
SRM-24102
Roslyn branch from forkhttps://github.com/tmat/roslyn.git
.Expected: the build should report no errors.
Actual: the build report errors. Find the assert failure in
Binaries\Debug\build.log
.I'll try to get a smaller repo.
The text was updated successfully, but these errors were encountered: