Displaying 5 results from an estimated 5 matches for "vectorvalue".
2014 Dec 18
8
[LLVMdev] Indexed Load and Store Intrinsics - proposal
...r gather and/or scatter instructions.
Gather/scatter instructions allow read/write access to multiple memory addresses. The addresses are specified using a base address and a vector of indices.
We'd like Vectorizers to tap this functionality, and propose to do so by introducing new intrinsics:
VectorValue = @llvm.sindex.load (BaseAddr, VectorOfIndices, Scale)
VectorValue = @llvm.uindex.load (BaseAddr, VectorOfIndices, Scale)
VectorValue = @llvm.sindex.masked.load (BaseAddr, VectorOfIndices, Scale, PassThruVal, Mask)
VectorValue = @llvm.uindex.masked.load (BaseAddr, VectorOfIndices, Scale, PassThruVa...
2015 Mar 15
2
[LLVMdev] Indexed Load and Store Intrinsics - proposal
...ons.
> Gather/scatter instructions allow read/write access to multiple memory
> addresses. The addresses are specified using a base address and a
> vector of indices.
> We’d like Vectorizers to tap this functionality, and propose to do so
> by introducing new intrinsics:
>
> VectorValue = @llvm.sindex.load (BaseAddr, VectorOfIndices, Scale)
> VectorValue = @llvm.uindex.load (BaseAddr, VectorOfIndices, Scale)
> VectorValue = @llvm.sindex.masked.load (BaseAddr, VectorOfIndices,
> Scale, PassThruVal, Mask) VectorValue = @llvm.uindex.masked.load
> (BaseAddr, VectorOfIn...
2014 Dec 21
3
[LLVMdev] Indexed Load and Store Intrinsics - proposal
On 12/18/2014 11:56 AM, dag at cray.com wrote:
> "Demikhovsky, Elena" <elena.demikhovsky at intel.com> writes:
>
>> Semantics:
>> For i=0,1,…,N-1: if (Mask[i]) {*(BaseAddr + VectorOfIndices[i]*Scale)
>> = VectorValue[i];}
>> VectorValue: any float or integer vector type.
>> BaseAddr: a pointer; may be zero if full address is placed in the
>> index.
>> VectorOfIndices: a vector of i32 or i64 signed or unsigned integer
>> values.
> What about the case of a gather/scatter where the...
2014 Dec 24
2
[LLVMdev] Indexed Load and Store Intrinsics - proposal
...gt;
>
> On 12/18/2014 11:56 AM, dag at cray.com wrote:
> > "Demikhovsky, Elena" <elena.demikhovsky at intel.com> writes:
> >
> >> Semantics:
> >> For i=0,1,…,N-1: if (Mask[i]) {*(BaseAddr +
> >> VectorOfIndices[i]*Scale)
> >> = VectorValue[i];}
> >> VectorValue: any float or integer vector type.
> >> BaseAddr: a pointer; may be zero if full address is placed in the
> >> index.
> >> VectorOfIndices: a vector of i32 or i64 signed or unsigned integer
> >> values.
> > What about the case...
2014 Dec 24
2
[LLVMdev] Indexed Load and Store Intrinsics - proposal
...11:56 AM, dag at cray.com wrote:
> > > "Demikhovsky, Elena" <elena.demikhovsky at intel.com> writes:
> > >
> > >> Semantics:
> > >> For i=0,1,…,N-1: if (Mask[i]) {*(BaseAddr +
> > >> VectorOfIndices[i]*Scale)
> > >> = VectorValue[i];}
> > >> VectorValue: any float or integer vector type.
> > >> BaseAddr: a pointer; may be zero if full address is placed in
> > >> the
> > >> index.
> > >> VectorOfIndices: a vector of i32 or i64 signed or unsigned
> > >> i...