Displaying 9 results from an estimated 9 matches for "gathernode".
2016 Dec 09
5
TableGen - Help to implement a form of gather/scatter operations for Mips MSA
...ns) gather and scatter operations?
If so, can you share with me the TableGen spec? (I tried to start from LD_DESC_BASE,
but it doesn't seem to be trivial. Also, LLVM seems to have implemented scatter/gather
instructions only for the x86 processor - there, they defined new SDNodes called
GatherNode and ScatterNode.)
Thank you,
Alex
2016 Dec 09
0
TableGen - Help to implement a form of gather/scatter operations for Mips MSA
Hi Alex,
I don’t know too much about recent MIPS, but have recently been doing something similar for the new ARM SVE architecture, so hopefully this will get you closer to what you need:
If you’re looking where I think you are (lib/Target/X86/X86InstrAVX512.td), ‘GatherNode’ is a template argument, not a definition.
It allows a PatFrag be passed into the avx512_gather multiclass definition.
Working backwards from here, the actual PatFrags passed into this are things like ‘mgatherv4i32’. These are patterns that match a MaskedGatherSDNode for a particular data type....
2017 Aug 07
2
VBROADCAST Implementation Issues
...ow??
def GATHER_256B : I<0x68, MRMSrcMem, (outs VR_2048:$dst, _.KRCWM:$mask_wb),
(VR_2048:$src1, _.KRCWM:$mask, ins i2048mem:$src2),
"GATHER_256B\t{$src2, {$dst}{${mask}}|${dst} {${mask}},
$src2}"),
[(set VR_2048:$dst, _.KRCWM:$mask_wb, (v64i32
(GatherNode (VR_2048:$src1), _.KRCWM:$mask,
VR_2048:$src2))],
IIC_MOV_MEM>, TA;
def: Pat<(v64f32 (GatherNode addr:$src2)), (GATHER_256B addr:$src2)>;
Thank You
On Mon, Aug 7, 2017 at 2:57 AM, Craig Topper <craig.topper at gmail.com> wrote:
> masked...
2017 Aug 07
3
VBROADCAST Implementation Issues
...KRCWM:$mask_wb), (VR_2048:$src1, _.KRCWM:$mask, ins i2048mem:$src2),
>>>> "GATHER_256B\t{$src2, {$dst}{${mask}}|${dst}
>>>> {${mask}}, $src2}"),
>>>> [(set VR_2048:$dst, _.KRCWM:$mask_wb, (v64i32
>>>> (GatherNode (VR_2048:$src1), _.KRCWM:$mask,
>>>> VR_2048:$src2))],
>>>> IIC_MOV_MEM>, TA;
>>>> def: Pat<(v64f32 (GatherNode addr:$src2)), (GATHER_256B addr:$src2)>;
>>>>
>>>> Thank You
>>>>...
2016 Dec 11
2
TableGen - Help to implement a form of gather/scatter operations for Mips MSA
...rote:
> Hi Alex,
>
> I don’t know too much about recent MIPS, but have recently been doing something similar
> for the new ARM SVE architecture, so hopefully this will get you closer to what you need:
>
> If you’re looking where I think you are (lib/Target/X86/X86InstrAVX512.td), ‘GatherNode’
> is a template argument, not a definition.
> It allows a PatFrag be passed into the avx512_gather multiclass definition.
>
> Working backwards from here, the actual PatFrags passed into this are things like
> ‘mgatherv4i32’. These are patterns that match a MaskedGatherSDNode for a...
2016 Dec 12
0
TableGen - Help to implement a form of gather/scatter operations for Mips MSA
...c. for some of the common cases).
> If so, can you share with me the TableGen spec? (I tried to start from LD_DESC_BASE, but it doesn't seem to be trivial. Also, LLVM seems to have implemented scatter/gather instructions only for the x86 processor - there, they defined new SDNodes called GatherNode and ScatterNode.)
>
> Thank you,
> Alex
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
2017 Aug 06
2
VBROADCAST Implementation Issues
i want to implement gather for v64i32. i wrote following code.
def GATHER_256B : I<0x68, MRMSrcMem, (outs VR_2048:$dst), (ins
i2048mem:$src),
"GATHER_256B\t{$src, $dst|$dst, $src}",
[(set VR_2048:$dst, (v64i32 (masked_gather
addr:$src)))],
IIC_MOV_MEM>, TA;
def: Pat<(v64f32 (masked_gather addr:$src)), (GATHER_256B
2016 Dec 12
0
TableGen - Help to implement a form of gather/scatter operations for Mips MSA
...>>
>> I don’t know too much about recent MIPS, but have recently been doing something similar
>> for the new ARM SVE architecture, so hopefully this will get you closer to what you need:
>>
>> If you’re looking where I think you are (lib/Target/X86/X86InstrAVX512.td), ‘GatherNode’
>> is a template argument, not a definition.
>> It allows a PatFrag be passed into the avx512_gather multiclass definition.
>>
>> Working backwards from here, the actual PatFrags passed into this are things like
>> ‘mgatherv4i32’. These are patterns that match a Mask...
2016 Dec 15
2
TableGen - Help to implement a form of gather/scatter operations for Mips MSA
...;> I don’t know too much about recent MIPS, but have recently been doing something similar
>>> for the new ARM SVE architecture, so hopefully this will get you closer to what you need:
>>>
>>> If you’re looking where I think you are (lib/Target/X86/X86InstrAVX512.td), ‘GatherNode’
>>> is a template argument, not a definition.
>>> It allows a PatFrag be passed into the avx512_gather multiclass definition.
>>>
>>> Working backwards from here, the actual PatFrags passed into this are things like
>>> ‘mgatherv4i32’. These are patter...