-
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
JIT: VN does not encode base type for CreateScalar
#105721
Comments
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch |
priority:2 for RC1 snap : Functionality issue |
Looks like this is a CSE issue.
Due to This can be seen when
Later, inside the
Which is incorrect. |
|
Small repro that repros on win-x64 as well: using System;
using System.Runtime.Intrinsics;
public class Program
{
public static void Main()
{
new Program().Foo();
}
public short s_21 = -1;
private void Foo()
{
Vector128<short> v1 = Vector128.CreateScalar<short>(s_21);
Vector128<int> v2 = Vector128.CreateScalar<int>(s_21);
Console.WriteLine(v1);
Console.WriteLine(v2);
}
} Looks like we should be encoding the base type in |
Sve.TestFirstTrue
CreateScalar
The def and use of |
Looking at the CSE code I'm a little lost. |
The problem here is in value numbering -- VN should not be giving For some intrinsics their operation is altered by the type they operate on, in this case |
Didn't spot this earlier! Thanks for taking it. |
cc @dotnet/jit-contrib @dotnet/arm64-contrib
(This one may potentially not be SVE related -- not sure.)
The text was updated successfully, but these errors were encountered: