This is an archive of the discontinued LLVM Phabricator instance.

CUDA: mark implicit intrinsics properly
ClosedPublic

Authored by eliben on Sep 30 2014, 9:35 AM.

Details

Reviewers
eliben
pcc
rnk
Summary

r218624 implemented target inference for implicit special members. However, other entities can be implicit - for example intrinsics. These can not have inference running on them, so they should be marked host device as before. This is the safest and most flexible setting, since by construction these functions don't invoke anything, and we'd like them to be invokable from both host and device code. LLVM's intrinsics definitions (where these intrinsics come from in the case of CUDA/NVPTX) have no notion of target, so both host and device intrinsics can be supported this way.

Diff Detail

Event Timeline

eliben updated this revision to Diff 14230.Sep 30 2014, 9:35 AM
eliben retitled this revision from to CUDA: mark implicit intrinsics properly.
eliben updated this object.
eliben edited the test plan for this revision. (Show Details)
eliben added reviewers: pcc, rnk.
eliben added a subscriber: Unknown Object (MLST).
rnk accepted this revision.Sep 30 2014, 9:55 AM
rnk edited edge metadata.

lgtm

This revision is now accepted and ready to land.Sep 30 2014, 9:55 AM
eliben accepted this revision.Sep 30 2014, 10:49 AM
eliben added a reviewer: eliben.

r218688.

eliben closed this revision.Mar 23 2015, 3:27 PM