search for: iany

Displaying 20 results from an estimated 23 matches for "iany".

Did you mean: any
2007 Aug 03
1
[LLVMdev] Adding intrinsic with variable argument list HOWTO.
...idea how it's done. Right now I'm trying following: def CustomOpParams : SDTypeProfile<0,2,[]>; def customop : SDNode<"ISD::INTRINSIC_VOID", CustomOpParams>; def : Pat<(customop tglobaladdr:$dst,iPTR:$vararg), (int_tce_customop tglobaladdr:$dst, iAny:$vararg)>; def : Pat<(call texternalsym:$dst,iAny:$vararg), (int_tce_customop texternalsym:$dst, iAny:$vararg)>; but compilation gives following error: isVoid:void anonymous.52: (intrinsic_void:void 197:iPTR, (tglobaladdr:iPTR):$dst, isVoid:void) /home/elhigu/llvm-inst...
2009 Aug 09
4
[LLVMdev] proposal to add MVT::vAny type
The ARM Neon load, store and shuffle operations that I've been implementing recently with LLVM intrinsics do not care about the distinction between vectors with i32 and f32 elements -- only the size matters. But, because we have only MVT::fAny and MVT::iAny types, I've been having to define separate intrinsics for the operations with floating-point vector elements. It didn't bother me when there were only a few intrinsics like this, but now there are more, and I realized this weekend that I still need to add more for the load/store...
2008 Feb 19
2
[LLVMdev] Problem with variable argument intrinsics
...ed creating variable argument intrinsics which are to be placeholders for some instructions which should not be executed by the backend. Kindly help me with the errors in my "migrate_begin" intrinsic creation //Additions made to Intrinsics.td file: def llvm_migrate_begin : LLVMType<iAny>; def int_migrate_begin : Intrinsic<[llvm_migrate_begin,llvm_vararg_ty],[IntrWriteMem],"llvm.migrate_begin">; //A section of the code which deals with the //"migrate_begin" intrinsic creation is as follows: const Type **Tys=(const Type**)calloc(extTys.size(),sizeof(Ty...
2015 Jan 15
2
[LLVMdev] Overloaded intrinsics: name explosion
.... gc.statepoint's signature is fine with a iPTRAny as the first argument. gc.result is in trouble, because none of the signatures admit even a simple array of integers, and there's no aAny. And certainly no vectors. So we can get a gc.result.vector to add to this mess, and admit [1] to make iAny work with integer arrays (and fAny work with float arrays). Then we can't have an array of pointers. gc.relocate suffers from the same problem: we want to be able to relocate a vector of pointers, but it's simply not possible with its signature. My proposal is to: 1. Introduce aAny. 2. Ma...
2008 Feb 19
0
[LLVMdev] Problem with variable argument intrinsics
...which > are to be placeholders for some instructions which > should not be executed by the backend. > > Kindly help me with the errors in my "migrate_begin" > intrinsic creation > > //Additions made to Intrinsics.td file: > > def llvm_migrate_begin : LLVMType<iAny>; > def int_migrate_begin : > Intrinsic<[llvm_migrate_begin,llvm_vararg_ty], > [IntrWriteMem],"llvm.migrate_begin">; This says that the return type is overloaded (because it's iAny). But that's the only overloaded part here; using variadic argument lists is...
2014 Jul 17
2
[LLVMdev] Fwd: Re: [PATCH] [TABLEGEN] Do not crash on intrinsics with names longer than 40 characters
...sic<string name, list<LLVMType> param_types = []> { + string LLVMName = name; + bit isTarget = 0; + string TargetPrefix = ""; + list<LLVMType> RetTypes = []; + list<LLVMType> ParamTypes = param_types; + list<IntrinsicProperty> Properties = []; +} + +def iAny : ValueType<0, 254>; +def llvm_anyint_ty : LLVMType<iAny>; + +// Make sure we generate the long name without crashing +// CHECK: this_is_a_really_long_intrinsic_name_but_we_should_still_not_crash // llvm.this.is.a.really.long.intrinsic.name.but.we.should.still.not.crash +def int_foo :...
2009 Aug 09
0
[LLVMdev] proposal to add MVT::vAny type
...apple.com> wrote: > The ARM Neon load, store and shuffle operations that I've been > implementing recently with LLVM intrinsics do not care about the > distinction between vectors with i32 and f32 elements -- only the size > matters. But, because we have only MVT::fAny and MVT::iAny types, > I've been having to define separate intrinsics for the operations with > floating-point vector elements. It didn't bother me when there were > only a few intrinsics like this, but now there are more, and I > realized this weekend that I still need to add more for the l...
2009 Aug 09
2
[LLVMdev] proposal to add MVT::vAny type
...gt; with an example? I'm sorry that I don't know much at all about > neon... It doesn't do anything fundamental. It just seems like a better fit. Neon has vectors of both integers and floats. Currently my choices for describing the type constraints for a Neon intrinsic are iAny or fAny, but those also allow scalars. vAny would more accurately indicate that only vector types are allowed, and it would also avoid the need for bitcasting. It sounds like it is not a popular idea, so I'll let it rest. > > -Chris > > >> >> I had been thinking...
2009 Aug 09
0
[LLVMdev] proposal to add MVT::vAny type
...M, Bob Wilson wrote: > The ARM Neon load, store and shuffle operations that I've been > implementing recently with LLVM intrinsics do not care about the > distinction between vectors with i32 and f32 elements -- only the size > matters. But, because we have only MVT::fAny and MVT::iAny types, > I've been having to define separate intrinsics for the operations with > floating-point vector elements. It didn't bother me when there were > only a few intrinsics like this, but now there are more, and I > realized this weekend that I still need to add more for the l...
2014 Jul 17
2
[LLVMdev] Fwd: Re: [PATCH] [TABLEGEN] Do not crash on intrinsics with names longer than 40 characters
...g LLVMName = name; >> + bit isTarget = 0; >> + string TargetPrefix = ""; >> + list<LLVMType> RetTypes = []; >> + list<LLVMType> ParamTypes = param_types; >> + list<IntrinsicProperty> Properties = []; >> +} >> + >> +def iAny : ValueType<0, 254>; >> +def llvm_anyint_ty : LLVMType<iAny>; >> + >> +// Make sure we generate the long name without crashing >> +// CHECK: >> this_is_a_really_long_intrinsic_name_but_we_should_still_not_crash // >> llvm.this.is.a.really.long.intri...
2016 Jul 26
2
Help wanted: Overloading an Intinsic
...have encountered issues with overloading an intrinsic function. I have defined two types, abit (which is mapped, in Intrinsics.td, to i128) and qbit (accordingly mapped to i16). I would like my intrinsic function, CNOT(x,y), to accept either an abit or a qbit for each argument, so I overload with iAny and llvm_anyint_ty, as seemed to be the method for other intrinsics: def int_CNOT: Intrinsic<[], [llvm_anyint_ty, llvm_anyint_ty],[],["llvm.CNOT"]>; My llvm/clang directory builds successfully, but I get an error on getType from clang, which I believe is rooted in my llvm code. My...
2008 May 07
2
[LLVMdev] Creation of Intrinsics with Pointer Return Types
...lvm_vararg_ty],[IntrWriteMem],"llvm.migrate_begin">;<br> <br>I want to replace the instructions from this set , having outgoing data dependencies, with " migrate_end " intrinsic instructions.<br>I created two migrate_end intrinsics with return types anyint(iAny Value Type) and any float(fAny Value Type).<br>Entries in the Intrinsics.td file:<br>def int_migrate_end_int : Intrinsic<[llvm_anyint_ty,llvm_i32_ty,llvm_i32_ty],[IntrWriteMem],"llvm.migrate_end_int">;<br>def int_migrate_end_float : Intrinsic<[llvm_anyfloat_ty...
2008 Jun 25
1
[LLVMdev] Assert in SelectionDAGLegalize when using arbitrary size integers
...assert(NVT > VT && MVT::isInteger(NVT) == MVT::isInteger(VT) && "Cannot promote to smaller type!"); The assert fails in the first test. When trying to understand the bahaviour, I saw that : - VT value is 0xBFE : OK because 0xB is (bitwidth-1) and 0xFE is MVT::iAny from MVT::SimpleValueType - NVT value is 3 : OK because 3 = MVT::i16 from MVT::SimpleValueType What I don't really understand is the meaning of that first test in the assert : 'NVT > VT'. As in that case VT is always >= MVT::iAny and NVT is <= MVT::LAST_VALUETYPE, the test is...
2008 Feb 20
1
[LLVMdev] Invalid intrinsic name error
...; > should not be executed by the backend. > > > > Kindly help me with the errors in my > > "migrate_begin" > > > intrinsic creation > > > > //Additions made to Intrinsics.td file: > > > > def llvm_migrate_begin : LLVMType<iAny>; > > def int_migrate_begin : > > Intrinsic<[llvm_migrate_begin,llvm_vararg_ty], > > [IntrWriteMem],"llvm.migrate_begin">; > > This says that the return type is overloaded > (because it's iAny). But > that's > the only overloaded p...
2016 Jul 28
0
Help wanted: Overloading an Intinsic
...ntered issues with overloading an intrinsic function. > > I have defined two types, abit (which is mapped, in Intrinsics.td, to i128) and qbit (accordingly mapped to i16). I would like my intrinsic function, CNOT(x,y), to accept either an abit or a qbit for each argument, so I overload with iAny and llvm_anyint_ty, as seemed to be the method for other intrinsics: > > def int_CNOT: Intrinsic<[], [llvm_anyint_ty, llvm_anyint_ty],[],["llvm.CNOT"]>; > > My llvm/clang directory builds successfully, but I get an error on getType from clang, which I believe is roote...
2008 May 07
0
[LLVMdev] Creation of Intrinsics with Pointer Return Types
...,llvm_vararg_ty], > [IntrWriteMem],"llvm.migrate_begin">; > > I want to replace the instructions from this set , having outgoing > data dependencies, with " migrate_end " intrinsic instructions. > I created two migrate_end intrinsics with return types anyint(iAny > Value Type) and any float(fAny Value Type). > Entries in the Intrinsics.td file: > def int_migrate_end_int : > Intrinsic<[llvm_anyint_ty,llvm_i32_ty,llvm_i32_ty], > [IntrWriteMem],"llvm.migrate_end_int">; > def int_migrate_end_float : > Intrinsic<[l...
2009 Aug 09
1
[LLVMdev] proposal to add MVT::vAny type
...gt; The ARM Neon load, store and shuffle operations that I've been >> implementing recently with LLVM intrinsics do not care about the >> distinction between vectors with i32 and f32 elements -- only the >> size >> matters. But, because we have only MVT::fAny and MVT::iAny types, >> I've been having to define separate intrinsics for the operations >> with >> floating-point vector elements. It didn't bother me when there were >> only a few intrinsics like this, but now there are more, and I >> realized this weekend that I still...
2007 Jun 13
1
[LLVMdev] Status of pre-legalize vector changes
...the ValueTable datastructure would be > very simple, and moving all the methods to operate on a value table would > be straight-forward. If ValueTable was a simple class, then tblgen could > instantiate it (f.e.) and not populate it with any of the funny MVT's. You mean like MVT::iAny? Those are still just simple enum values; they don't live in the table. Dan
2010 Apr 21
1
[LLVMdev] Bufer overrun in getValueTypeList()
...eTypeList even tries to write to that array element causing a memory corruption. Should iPTR handled with the extended types, simple types or in a different way? Should this function even be called with iPTR? Other value types that could have the same problem are Metadata, iPTRAny, vAny, fAny and iAny. Thanks, Javier -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100421/5ac6bb64/attachment.html>
2008 Feb 12
0
[LLVMdev] Inrinsic Creation Problem
...ating intrinsics which are to be placeholders for some instructions which should not be executed by the backend. Kindly help me with the errors in my "migrate_begin" intrinsic creation The following are the additions made to the Intrinsics.td file def llvm_migrate_begin : LLVMType<iAny>; def int_migrate_begin : Intrinsic<[llvm_migrate_begin,llvm_vararg_ty], [IntrWriteMem],"llvm.migrate_begin">; A section of the code which deals with the "migrate_begin" intrinsic creation is as follows const Type **Tys=(const Type**)calloc(extTys.size(),sizeof(Type*)...