[LLVMdev] On calling intrinsics

David Given dg at cowlark.com
Sun Jan 20 11:34:07 PST 2013


On 20/01/13 19:20, Caldarale, Charles R wrote:
[...]
> That's because there is no llvm.ceil.* intrinsic defined in include/llvm/Intrinsics.td for 3.2

Ah. Yes, that would explain it... does this mean that I can rely on all
the intrinsics listed existing for the common types (int, float,
double)? Or should I be trying to follow the libc call route?

I've noticed that llc is successfully turning this:

define float @t(float %f) nounwind uwtable readnone {
  %1 = tail call float @sqrtf(float %f) nounwind readnone
  ret float %1
}

...into this:

t:
	sqrtss	%xmm0, %xmm0
	ret

...but I haven't figured out what pass does it yet.

-- 
┌─── dg@cowlark.com ───── http://www.cowlark.com ─────
│ "Of course, on a sufficiently small planet, 40 km/hr is, in fact,
│ sufficient to punt the elastic spherical cow into low orbit." ---
│ Brooks Moses on r.a.sf.c

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130120/e493ae93/attachment.sig>


More information about the llvm-dev mailing list