search for: splitvecop_stor

Displaying 8 results from an estimated 8 matches for "splitvecop_stor".

Did you mean: splitvecop_store
2016 Jan 29
5
Question about store with unaligned memory address
...or_size (8))); void test (UV *x, UV *y) { *x = *y / ((UV) { 4, 4, 4, 4 }); } The target does not support vector type so CodeGen tries to split and scalarize vector to legalize type. While legalizing vector type, the stores of each vector elements nodes are generated from 'DAGTypeLegalizer::SplitVecOp_STORE'. But the stores are not connected with chain. I guess it assumes each vector element's address is different. The each store is lowered to load and store nodes with high and low address but they are not connected with the other store's one. It causes problem. I am not sure how to solve...
2016 Feb 01
2
Question about store with unaligned memory address
.../ ((UV) { 4, 4, 4, 4 }); >> } >> >> The target does not support vector type so CodeGen tries to split and >> scalarize vector to legalize type. While legalizing vector type, the >> stores of each vector elements nodes are generated from >> 'DAGTypeLegalizer::SplitVecOp_STORE'. But the stores are not connected >> with chain. I guess it assumes each vector element's address is >> different. The each store is lowered to load and store nodes with high >> and low address but they are not connected with the other store's one. >> It causes...
2016 Jan 30
0
Question about store with unaligned memory address
...UV *y) { > *x = *y / ((UV) { 4, 4, 4, 4 }); > } > > The target does not support vector type so CodeGen tries to split and > scalarize vector to legalize type. While legalizing vector type, the > stores of each vector elements nodes are generated from > 'DAGTypeLegalizer::SplitVecOp_STORE'. But the stores are not connected > with chain. I guess it assumes each vector element's address is > different. The each store is lowered to load and store nodes with high > and low address but they are not connected with the other store's one. > It causes problem. I am n...
2017 Sep 25
3
What should a truncating store do?
...have emailed Simon Pilgrim who added the test case to show that we > no longer crash on this test case (see > https://bugs.llvm.org/show_bug.cgi?id=20011). But even if the compiler > doesn’t crash, the behavior seems wrong to me. > Yes, the behavior here is wrong. DAGTypeLegalizer::SplitVecOp_STORE/DAGTypeLegalizer::SplitVecRes_LOAD/etc. assume the element size is a multiple of 8.  I'm sure this has been discussed before, but I guess nobody ever wrote a patch to fix it...? -Eli -- Employee of Qualcomm Innovation Center, Inc. Qualcomm Innovation Center, Inc. is a member of Code Auror...
2017 Sep 25
0
What should a truncating store do?
(Not sure if this exactly maps to “truncating store”, but I think it at least touches some of the subjects discussed in this thread) Our out-of-tree-target need several patches to get things working correctly for us. We have introduced i24 and i40 types in ValueTypes/MachineValueTypes (in addition to the normal pow-of-2 types). And we have vectors of those (v2i40, v4i40). And the byte size in our
2016 Jan 29
2
Question about store with unaligned memory address
Hi All, I have a question about store with unaligned memory address. I am working on target which has only 4 byte aligned load and store instruction and I am generating 2 load and store instructions to store value on memory which the address is not aligned 4. I am doing it with lowering store as follow: 1. make low and high address with alignment. 2. load 2 words from low and high address.
2017 Sep 25
0
What should a truncating store do?
...s really expected? We have emailed Simon Pilgrim who added the test case to show that we no longer crash on this test case (see https://bugs.llvm.org/show_bug.cgi?id=20011). But even if the compiler doesn’t crash, the behavior seems wrong to me. Yes, the behavior here is wrong. DAGTypeLegalizer::SplitVecOp_STORE/DAGTypeLegalizer::SplitVecRes_LOAD/etc. assume the element size is a multiple of 8. I'm sure this has been discussed before, but I guess nobody ever wrote a patch to fix it...? -Eli -- Employee of Qualcomm Innovation Center, Inc. Qualcomm Innovation Center, Inc. is a member of Code Aurora F...
2017 Sep 15
2
What should a truncating store do?
They are starting to look complicated. The patch linked is interesting, perhaps v1 vectors are special cased. It shouldn't be too onerous to work out what one or two in tree back ends do by experimentation. Thanks again, it's great to have context beyond the source. On Fri, Sep 15, 2017 at 9:41 PM, Friedman, Eli <efriedma at codeaurora.org> wrote: > On 9/15/2017 12:10 PM, Jon