Add __powitf2 symbol for f128 integer exponentiation#614
Add __powitf2 symbol for f128 integer exponentiation#614tgross35 merged 3 commits intorust-lang:masterfrom
__powitf2 symbol for f128 integer exponentiation#614Conversation
__powitf2 symbol for f128 powi__powitf2 symbol for f128 integer exponentation
__powitf2 symbol for f128 integer exponentation__powitf2 symbol for f128 integer exponentiation
This will unblock adding support to compiler_builtins (<rust-lang/compiler-builtins#614>), which will then unblock adding tests for these new functions.
This will unblock adding support to compiler_builtins (<rust-lang/compiler-builtins#614>), which will then unblock adding tests for these new functions.
|
Blocked until we have the function in libs, rust-lang/rust#125188 |
|
Lol @Qadeem411 I have to imagine you didn’t mean to approve this |
Add `powi` fo `f16` and `f128` This will unblock adding support to compiler_builtins (<rust-lang/compiler-builtins#614>), which will then unblock adding tests for these new functions.
65841d8 to
9550d45
Compare
|
WIndows targets appear to fail compiling this crate because powi uses the f128 multiply and divide in its implementation, and these are not available. I don't know why only Windows has the issue, but other platforms without these available natively (e.g. aarch darwin) do not, must be slightly different linkage rules. How should I handle this @Amanieu? |
|
I think this just happens to work before libgcc provides these symbols, but that's not available on -msvc targets. You'll need to implement a fallback for that target for testing, at least temporarily. |
fdb0fd1 to
241b9a8
Compare
|
It looks like I can make this work by recreating |
Add `powi` fo `f16` and `f128` This will unblock adding support to compiler_builtins (<rust-lang/compiler-builtins#614>), which will then unblock adding tests for these new functions.
fbf79c0 to
f74817b
Compare
61980c6 to
e5407f7
Compare
5798bc3 to
74f2fb6
Compare
|
This should be ready for a look when you get the chance @Amanieu |
Amanieu
left a comment
There was a problem hiding this comment.
LGTM. Feel free to merge it either now (and enable it with MSVC later) or after a boostrap bump.
|
Thanks! rust-lang/rust#130792 hasn't been picked up yet so I might as well just update that to include this. |
74f2fb6 to
2738d63
Compare
Create the symbol `__powitf2`.
2738d63 to
31c4a8e
Compare
This includes the following which add `__divtf3` and `__powtf2`, and do some feature cleanup: - rust-lang/compiler-builtins#622 - rust-lang/compiler-builtins#692 - rust-lang/compiler-builtins#614 - rust-lang/compiler-builtins#694 The `cc` bump [1] was previously included but was reverted due to problems updating. [1]: rust-lang/compiler-builtins#690
This includes the following which add `__divtf3` and `__powtf2`, and do some feature cleanup: - rust-lang/compiler-builtins#622 - rust-lang/compiler-builtins#692 - rust-lang/compiler-builtins#614 - rust-lang/compiler-builtins#694 The `cc` bump [1] was previously included but was reverted due to problems updating. [1]: rust-lang/compiler-builtins#690
Update compiler-builtins to 0.1.130 This includes the following which add `__divtf3` and `__powtf2`, and do some feature cleanup: - rust-lang/compiler-builtins#622 - rust-lang/compiler-builtins#692 - rust-lang/compiler-builtins#614 - rust-lang/compiler-builtins#694 The `cc` bump [1] was previously included but was reverted due to problems updating. [1]: rust-lang/compiler-builtins#690
Update compiler-builtins to 0.1.130 This includes the following which add `__divtf3` and `__powtf2`, and do some feature cleanup: - rust-lang/compiler-builtins#622 - rust-lang/compiler-builtins#692 - rust-lang/compiler-builtins#614 - rust-lang/compiler-builtins#694 The `cc` bump [1] was previously included but was reverted due to problems updating. [1]: rust-lang/compiler-builtins#690
Add `__powitf2` symbol for `f128` integer exponentiation
No description provided.