search for: createbasictargettransforminfopass

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,