I tried creating intrinsics which
are to be placeholders for a set of instructions which
should not be executed by the backend.
In this process I want to replace the uses of each
instruction with the intrinsic(Call) instruction.
I am puzzled about the return type to be used in the
intrinsic defintion(for creating the intrinsic) which
is to be included in the Intrinsics.td file.
Do we need to create a number of intrinsics with
different return types?
If so i want to know the set of types which
collectively encompass all the possibilities posed by
the instruction type
I would for example try to map all dependencies via
intrinsic types: anyint,anyfloat and ptr_ty. Would
that be sufficient
there any simpler approach to this? As far as i
return value" and not the C semantics of void. The
strong type system
me fear that this approach won't work either?
On Tue, February 26, 2008 3:53 am, aditya vishnubhotla wrote:
> I would for example try to map all dependencies via
> overloading to
> intrinsic types: anyint,anyfloat and ptr_ty. Would
> that be sufficient
> or is
> there any simpler approach to this?
It's a little unclear from your message what you're trying to do, but
using intrinsics with returns types of anyint, anyfloat, ptr, and void
will allow you to create an intrinsic with the same return type as any
One possible exception is that if you're working on LLVM trunk, you
may see the new multiple-return-values. These aren't described
in the Manual yet though, and I suspect the intrinsics framework isn't
currently prepared for them either.