Displaying 8 results from an estimated 8 matches for "loadconst_i32".
2011 Sep 13
3
[LLVMdev] Setting priority in instruction selection
...f BFI_i32 : ThreeInOneOut<IL_OP_BFI, (outs GPRI32:$dst),
(ins GPRI32:$lhs, GPRI32:$rhs, GPRI32:$bitpat),
!strconcat(IL_OP_BFI.Text, " $dst, $lhs, $rhs, $bitpat"),
[(set GPRI32:$dst, (bfi_pat1 GPRI32:$lhs, GPRI32:$rhs, GPRI32:$bitpat))]>;
and also this instruction:
def LOADCONST_i32 : ILFormat<IL_OP_MOV, (outs GPRI32:$dst),
(ins i32imm:$val),
"mov $dst, $src",
[(set GPRI32:$dst, imm:$val)]>;
Now, what is happening with this code, (A & B) | (C & ~B), where B is an immedate and ~B is an inverse of it,
instead of getting
LOADCONST_i32...
2011 Sep 13
0
[LLVMdev] Setting priority in instruction selection
...> (ins GPRI32:$lhs, GPRI32:$rhs, GPRI32:$bitpat),
>
> !strconcat(IL_OP_BFI.Text, " $dst, $lhs, $rhs, $bitpat"),
>
> [(set GPRI32:$dst, (bfi_pat1 GPRI32:$lhs, GPRI32:$rhs,
> GPRI32:$bitpat))]>;
>
> and also this instruction:
>
>
>
> def LOADCONST_i32 : ILFormat<IL_OP_MOV, (outs GPRI32:$dst),
>
> (ins i32imm:$val),
>
> "mov $dst, $src",
>
> [(set GPRI32:$dst, imm:$val)]>;
>
>
>
>
>
> Now, what is happening with this code, (A & B) | (C & ~B), where B is an
> immedat...
2011 Sep 13
1
[LLVMdev] Setting priority in instruction selection
...),
> >
> > !strconcat(IL_OP_BFI.Text, " $dst, $lhs, $rhs, $bitpat"),
> >
> > [(set GPRI32:$dst, (bfi_pat1 GPRI32:$lhs, GPRI32:$rhs,
> > GPRI32:$bitpat))]>;
> >
> > and also this instruction:
> >
> >
> >
> > def LOADCONST_i32 : ILFormat<IL_OP_MOV, (outs GPRI32:$dst),
> >
> > (ins i32imm:$val),
> >
> > "mov $dst, $src",
> >
> > [(set GPRI32:$dst, imm:$val)]>;
> >
> >
> >
> >
> >
> > Now, what is happening with this...
2008 Oct 30
0
[LLVMdev] Using patterns inside patterns
I am not sure what you are looking to do. Please provide a mark up
example.
Evan
On Oct 28, 2008, at 11:00 AM, Villmow, Micah wrote:
> Is there currently a way to use a pattern inside of another pattern?
>
> Micah Villmow
> Systems Engineer
> Advanced Technology & Performance
> Advanced Micro Devices Inc.
> 4555 Great America Pkwy,
> Santa Clara, CA. 95054
> P:
2008 Oct 30
1
[LLVMdev] Using patterns inside patterns
...$src1))>;
I am attemping to do 64 bit integer shifts and using the following
pattern:
def LSHL : Pat<(shl GPRI64:$src0, GPRI32:$src1),
(LCREATE (ISHL (LLO GPRI64:$src0), GPRI32:$src1),
(IOR (ISHL (LHI GPRI64:$src0), GPRI32:$src1), (IOR (USHR (LLO
GPRI64:$src0), (IADD (LOADCONST_i32 32), (INEGATE GPRI32:$src1))), (USHR
(LLO GPRI64:$src0), (IADD GPRI32:$src1, (LOADCONST_i32 -32))))))>;
However, I have two adds that I could map to subtractions, what I would
like to be able to do is:
def LSHL : Pat<(shl GPRI64:$src0, GPRI32:$src1),
(LCREATE (ISHL (LLO GPRI6...
2008 Oct 28
4
[LLVMdev] Using patterns inside patterns
Is there currently a way to use a pattern inside of another pattern?
Micah Villmow
Systems Engineer
Advanced Technology & Performance
Advanced Micro Devices Inc.
4555 Great America Pkwy,
Santa Clara, CA. 95054
P: 408-572-6219
F: 408-572-6596
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
2011 Jan 04
4
[LLVMdev] Bug in MachineInstr::isIdenticalTo
...;, 1
GLOBALTRUNCSTORE_i32 %R258<kill>, %R257<kill>, 8; mem:ST1[%arrayidx]
RETURN
BB#10: derived from LLVM BB %switch.case61
Live Ins: %R258 %R260 %R259
Predecessors according to CFG: BB#7
%R257<def> = LOADCONST_i32 1
%R257<def> = SHL_i32 %R258<kill>, %R257<kill>
%R257<def> = CUSTOM_ADD_i32 %R260<kill>, %R257<kill>
%R258<def> = VEXTRACT_v4i32 %R259<kill>, 1
GLOBALTRUNC...
2011 Jan 04
0
[LLVMdev] Bug in MachineInstr::isIdenticalTo
...OBALTRUNCSTORE_i32 %R258<kill>, %R257<kill>, 8; mem:ST1[%arrayidx]
> RETURN
>
> BB#10: derived from LLVM BB %switch.case61
> Live Ins: %R258 %R260 %R259
> Predecessors according to CFG: BB#7
> %R257<def> = LOADCONST_i32 1
> %R257<def> = SHL_i32 %R258<kill>, %R257<kill>
> %R257<def> = CUSTOM_ADD_i32 %R260<kill>, %R257<kill>
> %R258<def> = VEXTRACT_v4i32 %R259<kill>, 1
>...