Displaying 9 results from an estimated 9 matches for "createbasictargettransforminfopass".
2013 Mar 22
2
[LLVMdev] proposed change to class BasicTTI
...version.
On the original call that creates this class, I'd like to pass the
address of the address of the TargetLoweringBase class.
That way I can insert a function pass before this pass which examines
the function attributes and changes the pointer.
So we would get:
ImmutablePass *
llvm::createBasicTargetTransformInfoPass(const TargetLoweringBase **TLI_) {
return new BasicTTI(TLI);
}
we would add the variable
TargetLoweringBase **TLI_
and at the beginning of each pass
TLI = *TLI_;
Maybe there is a more elegant way to do this but this is essentially
what I need to do.
2013 Mar 22
4
[LLVMdev] proposed change to class BasicTTI
...the
>> address of the address of the TargetLoweringBase class.
>>
>> That way I can insert a function pass before this pass which examines
>> the function attributes and changes the pointer.
>>
>> So we would get:
>>
>> ImmutablePass *
>> llvm::createBasicTargetTransformInfoPass(const TargetLoweringBase
>> **TLI_) {
>> return new BasicTTI(TLI);
>> }
>>
>> we would add the variable
>>
>> TargetLoweringBase **TLI_
>>
>> and at the beginning of each pass
>>
>> TLI = *TLI_;
>>
>> Maybe there is a...
2013 Mar 22
0
[LLVMdev] proposed change to class BasicTTI
...s of the TargetLoweringBase class.
>>>
>>> That way I can insert a function pass before this pass which examines
>>> the function attributes and changes the pointer.
>>>
>>> So we would get:
>>>
>>> ImmutablePass *
>>> llvm::createBasicTargetTransformInfoPass(const TargetLoweringBase
>>> **TLI_) {
>>> return new BasicTTI(TLI);
>>> }
>>>
>>> we would add the variable
>>>
>>> TargetLoweringBase **TLI_
>>>
>>> and at the beginning of each pass
>>>
>>> T...
2013 Mar 22
0
[LLVMdev] proposed change to class BasicTTI
...tes this class, I'd like to pass the
> address of the address of the TargetLoweringBase class.
>
> That way I can insert a function pass before this pass which examines
> the function attributes and changes the pointer.
>
> So we would get:
>
> ImmutablePass *
> llvm::createBasicTargetTransformInfoPass(const TargetLoweringBase **TLI_) {
> return new BasicTTI(TLI);
> }
>
> we would add the variable
>
> TargetLoweringBase **TLI_
>
> and at the beginning of each pass
>
> TLI = *TLI_;
>
> Maybe there is a more elegant way to do this but this is essentially
>...
2013 Mar 28
3
[LLVMdev] proposed change to class BasicTTI and dual mode mips16/32 working
...lass.
>>>>
>>>> That way I can insert a function pass before this pass which examines
>>>> the function attributes and changes the pointer.
>>>>
>>>> So we would get:
>>>>
>>>> ImmutablePass *
>>>> llvm::createBasicTargetTransformInfoPass(const TargetLoweringBase
>>>> **TLI_) {
>>>> return new BasicTTI(TLI);
>>>> }
>>>>
>>>> we would add the variable
>>>>
>>>> TargetLoweringBase **TLI_
>>>>
>>>> and at the beginning of each...
2013 Oct 27
3
[LLVMdev] Why is the loop vectorizer not working on my function?
...sisPasses(FPManager);
Here is what the target does:
void X86TargetMachine::addAnalysisPasses(PassManagerBase &PM) {
// Add first the target-independent BasicTTI pass, then our X86 pass. This
// allows the X86 pass to delegate to the target independent layer when
// appropriate.
PM.add(createBasicTargetTransformInfoPass(this));
PM.add(createX86TargetTransformInfoPass(this));
}
> LV: The Widest type: 32 bits.
> LV: The Widest register is: 32 bits.
This strongly looks like no target has added a target transform info pass so we default to NoTTI.
But, it could also be that you don’t have the right sub tar...
2013 Oct 27
0
[LLVMdev] Why is the loop vectorizer not working on my function?
...at the target does:
>
> void X86TargetMachine::addAnalysisPasses(PassManagerBase &PM) {
> // Add first the target-independent BasicTTI pass, then our X86 pass. This
> // allows the X86 pass to delegate to the target independent layer when
> // appropriate.
> PM.add(createBasicTargetTransformInfoPass(this));
> PM.add(createX86TargetTransformInfoPass(this));
> }
>
>
>
>> LV: The Widest type: 32 bits.
>> LV: The Widest register is: 32 bits.
> This strongly looks like no target has added a target transform info pass so we default to NoTTI.
>
> But, it could a...
2013 Oct 26
0
[LLVMdev] Why is the loop vectorizer not working on my function?
I would need this to work when calling the vectorizer through
the function pass manager. Unfortunately I am having the same
problem there:
LV: The Widest type: 32 bits.
LV: The Widest register is: 32 bits.
It's not picking the target information, although I tried with and
without the target triple in the module.
Any idea what could be wrong?
Frank
On 26/10/13 15:54, Hal Finkel wrote:
2013 Oct 26
3
[LLVMdev] Why is the loop vectorizer not working on my function?
----- Original Message -----
> >>> LV: The Widest type: 32 bits.
> >>> LV: The Widest register is: 32 bits.
>
> Yep, we don’t pick up the right TTI.
>
> Try -march=x86-64 (or leave it out) you already have this info in the
> triple.
>
> Then it should work (does for me with your example below).
That may depend on what CPU is picks by default; Frank,