Many intrinsics are not lowered to a function call; however, there is currently no way of knowing whether any given intrinsic is lowered to a call.
The function TargetTransformInfoImpl::isLoweredToCall was originally implemented to return 'false' for all intrinsics, suggesting that there is not the case
of any intrinsic being lowered to a call. The patch introduced here adds an attribute to indicate that a particular intrinsic will be lowered to a call instruction.
The aforementioned function has been updated to check the IsLoweredToCall attribute when it encounters an intrinsic.
This patch was inspired by the discussion at the following URL:
https://reviews.llvm.org/D41104
The semantics of lowering is preserved with this change, but I anticipate,
in the future, some intrinsics might be added or updated to reflect that they
truly be come a call.