Displaying 15 results from an estimated 15 matches for "combine2".
Did you mean:
combine
2017 Jul 06
2
Error in v64i32 type in x86 backend
...till the backend breaks the v64i32
into 4 v16i32. i want it to retain v64i32. like if there are 128 elements
in loop then it should break it into 2 v64i32 instructions.
in order to do this i have made necessary changes in X86ISelLowering.cpp.
and rebuild llvm. then when i use the command -view-dag-combine2-dags i get
the required output in graph but the following error on console:
LLVM ERROR: Cannot select: t10: ch = store<ST256[bitcast ([65 x i32]* @a to
<64 x i32>*)](align=16)(tbaa=<0x30c5438>)> t9, t7, t12, undef:i64
t7: v64i32 = add t6, t4
t6: v64i32,ch = load<LD256[bi...
2016 Aug 31
2
mapping calls to exp() to expf opcode
We've got both an sqrtf and an expf opcode in our architecture. If I call
sqrt() on the C side, I see the sqrtf opcode show up in the generated
assembly. However, if I call exp() on the C side, I don't see the expf
opcode show up on the generated assembly, I see a call to an exp function
from libm.
Here's what we've got in our TargetInstrinfo.td file for both of these
2017 Jan 24
3
Early legalization pass ? Doing early legalization in an existing pass ?
...which will expose optimization opportunities. Or is there a place
> that is appropriate to insert theses ?
>
> At least in theory, SelectionDAG is supposed to be able to do a lot of
> these kind of optimizations. The goal is to do legalization, then clean up
> the results of that in combine2.
>
> —escha
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists...
2017 Jul 07
2
Error in v64i32 type in x86 backend
...f there are 128
>>>> elements in loop then it should break it into 2 v64i32 instructions.
>>>>
>>>> in order to do this i have made necessary changes in
>>>> X86ISelLowering.cpp. and rebuild llvm. then when i use the
>>>> command -view-dag-combine2-dags i get the required output in graph but
>>>> the following error on console:
>>>>
>>>> LLVM ERROR: Cannot select: t10: ch = store<ST256[bitcast ([65 x i32]*
>>>> @a to <64 x i32>*)](align=16)(tbaa=<0x30c5438>)> t9, t7, t12, undef...
2017 Jan 23
2
Early legalization pass ? Doing early legalization in an existing pass ?
Hi all,
Some non trivial legalization of operations which aren't supported by the
backend would benefit from having the optimizer pass on them. I noticed
some example trying to optimize various pieces of code over the past weeks.
One offender is the cttz/ctlz intrinsic when defined on 0. On X86, BSR and
NSF are undefined on 0, and only recent CPU have the LZCNT and TZCNT
instructions that
2013 Mar 16
0
[LLVMdev] Expand action on FSUB with vector types causes both "Vector Unroll" and "Add+Negate"
...s, it thinks the Expand
legalize action means to unroll the vector. This isn't necessary and not
what I wanted.
Is there a way to get one and not the other? I don't want the unroll aspect
of the Expand action.
I changed to a Custom lowering and duplicated the FADD+FNEG action, but the
dag-combine2 stage moved this back to FSUB, which then failed to pattern
match in Select. That code checks for !LegalOperations ||
TLI.isLegalorCustom(FSUB), which of course is true for this case.
Suggestions?
Thanks,
Joe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http...
2018 Apr 07
0
Instruction selection algorithm
...n greedy; in practice most optimization goals seem to be representable through heuristics on the regular selection algorithm, at least for real machines. Additionally, I kind of suspect that there is far more to gain from better transformations during instruction lowering (e.g. in Combine1/Legalize/Combine2) than from better ordering in Select().
—escha
> On Mar 28, 2018, at 3:31 AM, Ivan Kulagin via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> Is the algorithm described in the article "Near-Optimal Instruction
> Selection on DAGs
> (https://llvm.org/pubs/2008-CGO-DagI...
2018 Mar 28
2
Instruction selection algorithm
Is the algorithm described in the article "Near-Optimal Instruction
Selection on DAGs
(https://llvm.org/pubs/2008-CGO-DagISel.html)" really used in llvm
instruction selection?
I've studied implementation (SelectionDAGISel.cpp) and I see that
instructions are selected
by target specific MatcherTable generated by llvm-tblgen. In the
implementation the first
matching pattern from
2008 Nov 18
1
[LLVMdev] 32 bit boolean results
You can tell LLVM that you have "sign extended" setCC results (all
ones).
Dan
On Nov 18, 2008, at 5:33 PM, Eli Friedman wrote:
> On Tue, Nov 18, 2008 at 1:56 PM, Villmow, Micah
> <Micah.Villmow at amd.com> wrote:
>> The IR produces correct results, but my backend does not and the
>> only thing
>> I can think of is that the IR is treating the
2017 Jul 07
2
Error in v64i32 type in x86 backend
...i want it to retain v64i32. like if
> there are 128 elements in loop then it should break it into 2
> v64i32 instructions.
>
> in order to do this i have made necessary changes in
> X86ISelLowering.cpp. and rebuild llvm. then when i use the
> command -view-dag-combine2-dags i get the required output in graph
> but the following error on console:
>
> LLVM ERROR: Cannot select: t10: ch = store<ST256[bitcast ([65 x
> i32]* @a to <64 x i32>*)](align=16)(tbaa=<0x30c5438>)> t9, t7,
> t12, undef:i64
> t7: v64i32...
2017 Jul 07
2
Error in v64i32 type in x86 backend
...into 4 v16i32. i want it to retain v64i32. like if there are 128
>> elements in loop then it should break it into 2 v64i32 instructions.
>>
>> in order to do this i have made necessary changes in X86ISelLowering.cpp.
>> and rebuild llvm. then when i use the command -view-dag-combine2-dags i
>> get the required output in graph but the following error on console:
>>
>> LLVM ERROR: Cannot select: t10: ch = store<ST256[bitcast ([65 x i32]* @a
>> to <64 x i32>*)](align=16)(tbaa=<0x30c5438>)> t9, t7, t12, undef:i64
>> t7: v64i32 = add...
2017 Jul 08
2
Error in v64i32 type in x86 backend
...elements in loop then it should break it into 2 v64i32 instructions.
>>>>>>
>>>>>> in order to do this i have made necessary changes in
>>>>>> X86ISelLowering.cpp. and rebuild llvm. then when i use the
>>>>>> command -view-dag-combine2-dags i get the required output in graph
>>>>>> but the following error on console:
>>>>>>
>>>>>> LLVM ERROR: Cannot select: t10: ch = store<ST256[bitcast ([65 x i32]*
>>>>>> @a to <64 x i32>*)](align=16)(tbaa=<0x30c...
2017 Jul 08
2
Error in v64i32 type in x86 backend
...ions.
>>>>>>>>>>
>>>>>>>>>> in order to do this i have made necessary changes in
>>>>>>>>>> X86ISelLowering.cpp. and rebuild llvm. then when i use the
>>>>>>>>>> command -view-dag-combine2-dags i get the required output in
>>>>>>>>>> graph but the following error on console:
>>>>>>>>>>
>>>>>>>>>> LLVM ERROR: Cannot select: t10: ch = store<ST256[bitcast ([65 x
>>>>>>>>&...
2017 Jul 08
5
Error in v64i32 type in x86 backend
...gt;> in order to do this i have made necessary changes in
>>>>>>>>>>>>>>>>>>>> X86ISelLowering.cpp. and rebuild llvm. then when i use the
>>>>>>>>>>>>>>>>>>>> command -view-dag-combine2-dags i get the required
>>>>>>>>>>>>>>>>>>>> output in graph but the following error on console:
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>&...
2018 Feb 26
1
Problems with write-behind with large files on Gluster 3.8.4
...-02-22 18:07:45.236910] I [MSGID: 115013] [server-helpers.c:293:do_fd_cleanup] 0-scratch-server: fd cleanup on /download/work/kstovall/57910/combine1.log
[2018-02-22 18:07:45.236966] I [MSGID: 115013] [server-helpers.c:293:do_fd_cleanup] 0-scratch-server: fd cleanup on /download/work/kstovall/57910/combine2.log
[2018-02-22 18:07:45.237007] I [MSGID: 101055] [client_t.c:415:gf_client_unref] 0-scratch-server: Shutting down connection wheeler061-17519-2018/02/22-18:04:06:449987-scratch-client-1-2-0
[2018-02-22 18:07:45.262237] I [MSGID: 115029] [server-handshake.c:692:server_setvolume] 0-scratch-server:...