Displaying 20 results from an estimated 25 matches for "iseligiblefortailcalloptim".
2016 Jun 28
2
Tail call optimization is getting affected due to local function related optimization with IPRA
...gt;>> Hello ,
>>>>>>
>>>>>> To solve this bug locally I have given preference to tail call optimization over local function related optimization in IPRA. I have added following method to achieve this:
>>>>>>
>>>>>> bool isEligibleForTailCallOptimization(Function *F) {
>>>>>> CallingConv::ID CC = F->getCallingConv();
>>>>>> if (CC == CallingConv::Fast || CC == CallingConv::GHC || CC == CallingConv::HiPE)
>>>>>> return true;
>>>>>> return false;
>>>&...
2016 Jun 28
2
Tail call optimization is getting affected due to local function related optimization with IPRA
...;>
>>>>> Hello ,
>>>>>
>>>>> To solve this bug locally I have given preference to tail call optimization over local function related optimization in IPRA. I have added following method to achieve this:
>>>>>
>>>>> bool isEligibleForTailCallOptimization(Function *F) {
>>>>> CallingConv::ID CC = F->getCallingConv();
>>>>> if (CC == CallingConv::Fast || CC == CallingConv::GHC || CC == CallingConv::HiPE)
>>>>> return true;
>>>>> return false;
>>>>> }
>&g...
2016 Jun 28
0
Tail call optimization is getting affected due to local function related optimization with IPRA
...ndya at gmail.com>> wrote:
>>>
>>> Hello ,
>>>
>>> To solve this bug locally I have given preference to tail call optimization over local function related optimization in IPRA. I have added following method to achieve this:
>>>
>>> bool isEligibleForTailCallOptimization(Function *F) {
>>> CallingConv::ID CC = F->getCallingConv();
>>> if (CC == CallingConv::Fast || CC == CallingConv::GHC || CC == CallingConv::HiPE)
>>> return true;
>>> return false;
>>> }
>>>
>>> Any other suggestio...
2016 Jun 29
0
Tail call optimization is getting affected due to local function related optimization with IPRA
...kvpandya at gmail.com>
>> wrote:
>>
>> Hello ,
>>
>> To solve this bug locally I have given preference to tail call
>> optimization over local function related optimization in IPRA. I have added
>> following method to achieve this:
>>
>> bool isEligibleForTailCallOptimization(Function *F) {
>> CallingConv::ID CC = F->getCallingConv();
>> if (CC == CallingConv::Fast || CC == CallingConv::GHC || CC ==
>> CallingConv::HiPE)
>> return true;
>> return false;
>> }
>>
>> Any other suggestions are always welcom...
2008 Apr 24
2
[LLVMdev] RFC: PowerPC tail call optimization patch
Another round :)
I'll post the patch to llvm-commits cause i guess people might get
annoyed by my series of patches :).
On Tue, Apr 22, 2008 at 10:34 PM, Evan Cheng <evan.cheng at apple.com> wrote:
.
>> +PPCTargetLowering::IsEligibleForTailCallOptimization(SDOperand Call,
>> ...
> That's fine. Please break it into two parts and move the target
> independent part out.
Done - see CheckTailCallReturnConstraints() in TargetLowering. The
rest of the function is still target dependent. PowerPC currently can
not tail call optimize byv...
2016 Jun 28
0
Tail call optimization is getting affected due to local function related optimization with IPRA
...;>
>>>>> Hello ,
>>>>>
>>>>> To solve this bug locally I have given preference to tail call optimization over local function related optimization in IPRA. I have added following method to achieve this:
>>>>>
>>>>> bool isEligibleForTailCallOptimization(Function *F) {
>>>>> CallingConv::ID CC = F->getCallingConv();
>>>>> if (CC == CallingConv::Fast || CC == CallingConv::GHC || CC == CallingConv::HiPE)
>>>>> return true;
>>>>> return false;
>>>>> }
>&g...
2016 Jun 28
2
Tail call optimization is getting affected due to local function related optimization with IPRA
...kvpandya at gmail.com> wrote:
>>>
>>> Hello ,
>>>
>>> To solve this bug locally I have given preference to tail call optimization over local function related optimization in IPRA. I have added following method to achieve this:
>>>
>>> bool isEligibleForTailCallOptimization(Function *F) {
>>> CallingConv::ID CC = F->getCallingConv();
>>> if (CC == CallingConv::Fast || CC == CallingConv::GHC || CC == CallingConv::HiPE)
>>> return true;
>>> return false;
>>> }
>>>
>>> Any other suggestio...
2008 Apr 24
0
[LLVMdev] RFC: PowerPC tail call optimization patch
....com> wrote:
> Another round :)
>
> I'll post the patch to llvm-commits cause i guess people might get
> annoyed by my series of patches :).
>
> On Tue, Apr 22, 2008 at 10:34 PM, Evan Cheng <evan.cheng at apple.com> wrote:
> .
> >> +PPCTargetLowering::IsEligibleForTailCallOptimization(SDOperand Call,
> >> ...
>
> > That's fine. Please break it into two parts and move the target
> > independent part out.
> Done - see CheckTailCallReturnConstraints() in TargetLowering. The
> rest of the function is still target dependent. PowerPC curren...
2008 Apr 22
2
[LLVMdev] RFC: PowerPC tail call optimization patch
...0 AM, Evan Cheng <evan.cheng at apple.com> wrote:
> More nitpicks:
> ...
> No need for else here. :-)
Done
> SPDiff = (int)CallerMinReservedArea - (int)ParamSize;
>
> Just change last statement to
> int SPDiff = (int)...
Done
>
> +bool
> +PPCTargetLowering::IsEligibleForTailCallOptimization(SDOperand Call,
> + SDOperand Ret,
> + SelectionDAG&
> DAG) const {
> + // Variable argument functions
> + // are not supported.
>
> Why two separate lines...
2008 Apr 22
0
[LLVMdev] RFC: PowerPC tail call optimization patch
...> wrote:
>> More nitpicks:
>> ...
>> No need for else here. :-)
> Done
>> SPDiff = (int)CallerMinReservedArea - (int)ParamSize;
>>
>> Just change last statement to
>> int SPDiff = (int)...
> Done
>>
>> +bool
>> +PPCTargetLowering::IsEligibleForTailCallOptimization(SDOperand Call,
>> + SDOperand Ret,
>> + SelectionDAG&
>> DAG) const {
>> + // Variable argument functions
>> + // are not supported.
>>
>>...
2008 Apr 21
0
[LLVMdev] RFC: PowerPC tail call optimization patch
...iff = 0;
+
+ PPCFunctionInfo *FI =
DAG.getMachineFunction().getInfo<PPCFunctionInfo>();
+ unsigned CallerMinReservedArea = FI->getMinReservedArea();
+ SPDiff = (int)CallerMinReservedArea - (int)ParamSize;
Just change last statement to
int SPDiff = (int)...
+bool
+PPCTargetLowering::IsEligibleForTailCallOptimization(SDOperand Call,
+ SDOperand Ret,
+ SelectionDAG&
DAG) const {
+ // Variable argument functions
+ // are not supported.
Why two separate lines?
+ if (!PerformTailCallOpt ||
+...
2008 Apr 16
2
[LLVMdev] RFC: PowerPC tail call optimization patch
Hello Dale,
this is an updated version of the tail call optimization patch for
powerpc. could you have a look at it?
i added code to support ppc64 (untested, will try to get access to
ppc64 on a friend's machine).
incorporated evan's formatting suggestions. ;)
will run another round of testing (llvm-test) on my powerpc g4/800
when i get the okay to commit. testing on this machine takes
2011 Jan 02
2
[LLVMdev] X86 -tailcallopt and C calling conversion
Happy 2011, everybody!
It seems -tailcallopt prevents tailcall optimization when both caller
and callee have ccc,
even when it is optimized without an option -tailcallopt.
Is it intended or misoptimized?
In X86ISelLowering.cpp:X86TargetLowering::IsEligibleForTailCallOptimization():
if (GuaranteedTailCallOpt) {
if (IsTailCallConvention(CalleeCC) && CCMatch)
return true;
return false;
}
I know -tailcallopt changes calling conversion of fastcc to callee-pop.
ps. I am tweaking tailcallopt on Win64.
...Takumi
2016 Jun 28
2
Tail call optimization is getting affected due to local function related optimization with IPRA
...Jun 27, 2016, at 12:25 PM, vivek pandya <vivekvpandya at gmail.com> wrote:
>
> Hello ,
>
> To solve this bug locally I have given preference to tail call optimization over local function related optimization in IPRA. I have added following method to achieve this:
>
> bool isEligibleForTailCallOptimization(Function *F) {
> CallingConv::ID CC = F->getCallingConv();
> if (CC == CallingConv::Fast || CC == CallingConv::GHC || CC == CallingConv::HiPE)
> return true;
> return false;
> }
>
> Any other suggestions are always welcomed.
Why aren’t checking for the pre...
2016 Jun 27
0
Tail call optimization is getting affected due to local function related optimization with IPRA
Hello ,
To solve this bug locally I have given preference to tail call optimization
over local function related optimization in IPRA. I have added following
method to achieve this:
bool isEligibleForTailCallOptimization(Function *F) {
CallingConv::ID CC = F->getCallingConv();
if (CC == CallingConv::Fast || CC == CallingConv::GHC || CC ==
CallingConv::HiPE)
return true;
return false;
}
Any other suggestions are always welcomed.
and I am checking this condition along with hasLocalLinkage() and...
2011 Jan 04
0
[LLVMdev] X86 -tailcallopt and C calling conversion
...en both caller
> and callee have ccc,
> even when it is optimized without an option -tailcallopt.
Sorry, I don't understand your question. What do you mean by both caller and callee have ccc?
Evan
> Is it intended or misoptimized?
>
> In X86ISelLowering.cpp:X86TargetLowering::IsEligibleForTailCallOptimization():
>
> if (GuaranteedTailCallOpt) {
> if (IsTailCallConvention(CalleeCC) && CCMatch)
> return true;
> return false;
> }
>
> I know -tailcallopt changes calling conversion of fastcc to callee-pop.
>
> ps. I am tweaking tailcallopt on Win64...
2016 Jun 28
0
Tail call optimization is getting affected due to local function related optimization with IPRA
...2016, at 12:25 PM, vivek pandya <vivekvpandya at gmail.com> wrote:
>
> Hello ,
>
> To solve this bug locally I have given preference to tail call
> optimization over local function related optimization in IPRA. I have added
> following method to achieve this:
>
> bool isEligibleForTailCallOptimization(Function *F) {
> CallingConv::ID CC = F->getCallingConv();
> if (CC == CallingConv::Fast || CC == CallingConv::GHC || CC ==
> CallingConv::HiPE)
> return true;
> return false;
> }
>
> Any other suggestions are always welcomed.
>
>
> Why aren’t ch...
2016 Jun 26
3
Tail call optimization is getting affected due to local function related optimization with IPRA
According to this http://llvm.org/docs/CodeGenerator.html#tail-call-section,
it seems that adding a new CC for the purpose of local function
optimization seems a good idea because tail call optimization only takes
place when both caller and callee have fastcc or GHC or HiPE calling
convention.
-Vivek
On Sun, Jun 26, 2016 at 1:26 AM, vivek pandya <vivekvpandya at gmail.com>
wrote:
>
2016 Aug 05
2
A thought to improve IPRA
The code in X86TargetLowering::IsEligibleForTailCallOptimization() has this part:
// The callee has to preserve all registers the caller needs to preserve.
const X86RegisterInfo *TRI = Subtarget.getRegisterInfo();
const uint32_t *CallerPreserved = TRI->getCallPreservedMask(MF, CallerCC);
if (!CCMatch) {
const uint32_t *CalleePreserved = TR...
2016 Aug 16
2
A thought to improve IPRA
...e code size change.
I am currently pausing on this.
Sincerely,
Vivek
On Sat, Aug 6, 2016 at 1:35 PM, vivek pandya <vivekvpandya at gmail.com> wrote:
>
>
> On Sat, Aug 6, 2016 at 2:00 AM, Matthias Braun <matze at braunis.de> wrote:
>
>> The code in X86TargetLowering::IsEligibleForTailCallOptimization() has
>> this part:
>>
>> // The callee has to preserve all registers the caller needs to
>> preserve.
>> const X86RegisterInfo *TRI = Subtarget.getRegisterInfo();
>> const uint32_t *CallerPreserved = TRI->getCallPreservedMask(MF,
>> CallerC...