llvm: use intrinsics for f16, f32 minimum/maximum#158330
Conversation
|
r? @nnethercote rustbot has assigned @nnethercote. Use Why was this reviewer chosen?The reviewer was selected based on:
|
There was a problem hiding this comment.
I think this makes sense to at least try, especially given #141087 has been resolved. But Nikita probably knows the status better.
r? nikic
This comment was marked as outdated.
This comment was marked as outdated.
|
llvm/llvm-project#140193 has landed in the mean time so I wonder if we can actually enable this intrinsic even for f64 now? |
|
@bors try |
This comment has been minimized.
This comment has been minimized.
llvm: use intrinsics for f16, f32 minimum/maximum try-job: dist-i586\* try-job: dist-arm\* try-job: arm\*
|
💔 Test for a6fd13e failed: CI. Failed job:
|
This comment has been minimized.
This comment has been minimized.
This is for minimumnum, not minimum. I believe minimum is still broken. |
|
Ah I see. I'll remove the 2nd commit then. Also apparently try-jobs has a different syntax than "try jobs=..."... @bors try jobs=dist-i586*,dist-arm*,arm* |
This comment has been minimized.
This comment has been minimized.
llvm: use intrinsics for f16, f32 minimum/maximum try-job: dist-i586* try-job: dist-arm* try-job: arm*
fbab069 to
bd757a6
Compare
|
@bors try jobs=dist-i586*,dist-arm*,arm* |
This comment has been minimized.
This comment has been minimized.
llvm: use intrinsics for f16, f32 minimum/maximum try-job: dist-i586* try-job: dist-arm* try-job: arm*
|
What's the motivation for using the intrinsics for some types? I'm not opposed, but also not clear we should do this given that the underlying issues are still open. |
|
There are no open issues I am aware of for f16/f32. So if we use them and issues pop up that still seems useful, then we'll file more LLVM bugs. IOW, we should test-drive the parts of the intrinsics that we think are working correctly. |
|
@bors r+ |
Rollup of 10 pull requests Successful merges: - #158410 (Update LLVM for Mach-O __LINKEDIT alignment fix.) - #157397 (cmse: clear padding when crossing the secure boundary) - #158036 (Add -Zinstrument-mcount=fentry to -Zinstrument-mcount) - #158330 (llvm: use intrinsics for f16, f32 minimum/maximum) - #158359 (fix(tests): allow either branch direction in ilog_known_base) - #158067 (LLVM 23: Adapt codegen test to moved assume) - #158261 (Move part of the target checking for `#[may_dangle]` to the parser) - #158358 (Fix invalid E0609 raw pointer deref suggestion inside macros) - #158392 (delegation: add tests for defaults and infers in generics) - #158394 (Generate synthetic generic args only for delegation's child segment)
The mentioned LLVM issues seem to only affect f64 and f128.
Cc @nikic @Urgau @tgross35