This is an archive of the discontinued LLVM Phabricator instance.

Intrinsics: Make is_fpclass and arithmetic_fence speculatable
ClosedPublic

Authored by arsenm on Nov 30 2022, 5:45 AM.

Details

Reviewers
jdoerfert
Summary

Mostly I'm not sure where the right place for the test is. I don't see an obvious test all these intrinsics are speculatable test

Diff Detail

Event Timeline

arsenm created this revision.Nov 30 2022, 5:45 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 30 2022, 5:45 AM
arsenm requested review of this revision.Nov 30 2022, 5:45 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 30 2022, 5:45 AM
Herald added a subscriber: wdng. · View Herald Transcript
jdoerfert added inline comments.Nov 30 2022, 10:41 AM
llvm/include/llvm/IR/Intrinsics.td
715

The subject line says this is now speculatable but the definition here is not. I'm confused.
Given the description, this "fence" doesn't actually do anything except provide a semi-permeable value pass-through, right? Then I agree this should be speculatable.

763

WillReturn is implied by default, I think

arsenm added inline comments.Nov 30 2022, 10:51 AM
llvm/include/llvm/IR/Intrinsics.td
715

The math instructions here are wrapped in a let IntrProperties block above. arithmetic_fence picks up willreturn also

jdoerfert accepted this revision.Nov 30 2022, 3:24 PM

LG

llvm/include/llvm/IR/Intrinsics.td
679

I see. WillReturn is also unnecessary here but maybe some non defaults will be added in the future.

This revision is now accepted and ready to land.Nov 30 2022, 3:24 PM