Displaying 5 results from an estimated 5 matches for "dataty".
Did you mean:
datat
2013 Nov 15
4
[LLVMdev] Limit loop vectorizer to SSE
Something like:
index 6db7f68..68564cb 100644
--- a/lib/Transforms/Vectorize/LoopVectorize.cpp
+++ b/lib/Transforms/Vectorize/LoopVectorize.cpp
@@ -1208,6 +1208,8 @@ void InnerLoopVectorizer::vectorizeMemoryInstruction(Instr
Type *DataTy = VectorType::get(ScalarDataTy, VF);
Value *Ptr = LI ? LI->getPointerOperand() : SI->getPointerOperand();
unsigned Alignment = LI ? LI->getAlignment() : SI->getAlignment();
+ if (Alignment == 0)
+ Alignment = 1;
unsigned AddressSpace = Ptr->getType()->getPointerAddres...
2013 Nov 15
0
[LLVMdev] Limit loop vectorizer to SSE
...rizer to SSE
>
>
> Something like:
>
> index 6db7f68..68564cb 100644
> --- a/lib/Transforms/Vectorize/LoopVectorize.cpp
> +++ b/lib/Transforms/Vectorize/LoopVectorize.cpp
> @@ -1208,6 +1208,8 @@ void
> InnerLoopVectorizer::vectorizeMemoryInstruction(Instr
> Type *DataTy = VectorType::get(ScalarDataTy, VF);
> Value *Ptr = LI ? LI->getPointerOperand() :
> SI->getPointerOperand();
> unsigned Alignment = LI ? LI->getAlignment() : SI->getAlignment();
> + if (Alignment == 0)
> + Alignment = 1;
That may be conservatively correct,...
2013 Nov 15
2
[LLVMdev] Limit loop vectorizer to SSE
Yes,
I was just about to send out:
DL->getABITypeAlignment(ScalarDataTy);
The question is:
“… ABI alignment for the target …"
is that
getPrefTypeAlignment
or
getABITypeAlignment
I would have thought the latter.
On Nov 15, 2013, at 4:12 PM, Hal Finkel <hfinkel at anl.gov> wrote:
> ----- Original Message -----
>> From: "Arnold Schwaigh...
2013 Nov 15
0
[LLVMdev] Limit loop vectorizer to SSE
Nadav,
I believe aligned accesses to unaligned pointers is precisely the issue.
Consider the function `add_u8S` before[1] and after[2] the loop vectorizer
pass. There is no alignment assumption associated with %kernel_data prior
to vectorization. I can't tell if it's the loop vectorizer or the codegen
at fault, but the alignment assumption seems to sneak in somewhere.
v/r,
Josh
[1]
2013 Nov 15
6
[LLVMdev] Limit loop vectorizer to SSE
On Nov 15, 2013, at 12:36 PM, Renato Golin <renato.golin at linaro.org> wrote:
> On 15 November 2013 20:24, Joshua Klontz <josh.klontz at gmail.com> wrote:
> Agreed, is there a pass that will insert a runtime alignment check? Also, what's the easiest way to get at TargetTransformInfo::getRegisterBitWidth() so I don't have to hard code 32? Thanks!
>
> I think