-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Use Int128 and UInt128 literals for compiler_rt specs #11944
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
base: master
Are you sure you want to change the base?
Use Int128 and UInt128 literals for compiler_rt specs #11944
Conversation
I don't think anything in the standard library can use 128-bit literals as long as we have CI using 1.0.0 as the base compiler. |
This is similar to #5545 which we can't merge unless ensuring compatibility with Crystal 1.0 (see #5545 (comment)). |
As these are only spec changes, I thought this wasn't an issue. But this PR can sit waiting for a while I guess, I see multiple CI failures. |
test__divti3(make_ti(-9223372036854775808, 0x0), -1, make_ti(-9223372036854775808, 0x0)) | ||
test__divti3(make_ti(-9223372036854775808, 0x0), -2, make_ti(0x4000000000000000, 0x0)) | ||
test__divti3(make_ti(-9223372036854775808, 0x0), 2, make_ti(-0x4000000000000000, 0x0)) | ||
test__divti3(0x80000000000000000000000000000000_u128.to_i128!, 1, 0x80000000000000000000000000000000_u128.to_i128!) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why 0x80000000000000000000000000000000_u128.to_i128!
and not -0x80000000000000000000000000000000_i128
Marking as draft because we probably won't merge this in the near future (see #5545 (comment)). |
This fixes a TODO to remove
make_ti
andmake_tu
once 128-bit literals are supported.