Displaying 4 results from an estimated 4 matches for "calleeamt".
2007 Oct 05
0
[LLVMdev] RFC: Tail call optimization X86
...lled:
...
else if (I->getOpcode() == X86::ADJCALLSTACKUP) {
// If we are performing frame pointer elimination and if the
callee pops
// something off the stack pointer, add it back. We do this
until we have
// more advanced stack pointer tracking ability.
if (uint64_t CalleeAmt = I->getOperand(1).getImm()) {
unsigned Opc = (CalleeAmt < 128) ?
(Is64Bit ? X86::SUB64ri8 : X86::SUB32ri8) :
(Is64Bit ? X86::SUB64ri32 : X86::SUB32ri);
MachineInstr *New =
BuildMI(TII.get(Opc), StackPtr).addReg(StackPtr).addImm
(CalleeAmt);
MB...
2007 Oct 04
3
[LLVMdev] RFC: Tail call optimization X86
Comments:
CheckDAGForTailCallsAndFixThem -
1.
for (SelectionDAG::allnodes_iterator BE = DAG.allnodes_begin(),
+ BI = prior(DAG.allnodes_end()); BI != BE; BI--) {
Please use pre-decrement instead of post-decrement.
2. The function is slower than it should be. You are scanning all the
nodes in the DAG twice. You should just examine DAG.getRoot() to make
determine whether it's a
2007 Oct 05
6
[LLVMdev] RFC: Tail call optimization X86
...t;getOpcode() == X86::ADJCALLSTACKUP) {
> // If we are performing frame pointer elimination and if the
> callee pops
> // something off the stack pointer, add it back. We do this
> until we have
> // more advanced stack pointer tracking ability.
> if (uint64_t CalleeAmt = I->getOperand(1).getImm()) {
> unsigned Opc = (CalleeAmt < 128) ?
> (Is64Bit ? X86::SUB64ri8 : X86::SUB32ri8) :
> (Is64Bit ? X86::SUB64ri32 : X86::SUB32ri);
> MachineInstr *New =
> BuildMI(TII.get(Opc), StackPtr).addReg(StackPtr).addIm...
2007 Oct 05
0
[LLVMdev] RFC: Tail call optimization X86
...JCALLSTACKUP) {
>> // If we are performing frame pointer elimination and if the
>> callee pops
>> // something off the stack pointer, add it back. We do this
>> until we have
>> // more advanced stack pointer tracking ability.
>> if (uint64_t CalleeAmt = I->getOperand(1).getImm()) {
>> unsigned Opc = (CalleeAmt < 128) ?
>> (Is64Bit ? X86::SUB64ri8 : X86::SUB32ri8) :
>> (Is64Bit ? X86::SUB64ri32 : X86::SUB32ri);
>> MachineInstr *New =
>> BuildMI(TII.get(Opc), StackPtr).ad...