search for: buildselectiondag

Displaying 10 results from an estimated 10 matches for "buildselectiondag".

2007 Oct 02
0
[LLVMdev] RFC: Tail call optimization X86
Hi all, I changed the code that checks whether a tail call is really eligible for optimization so that it performs the check/fix in SelectionDAGISel.cpp:BuildSelectionDAG() as suggest by Evan. Also eliminated an error that caused the remaining failing test cases in the test-suite. The results look very nice (on darwin x86, r42486). The same number (46) of failing test cases on patched version and vanilla version. LCCBETA was enabled on both. I changed the LCC...
2007 Sep 26
3
[LLVMdev] RFC: Tail call optimization X86
On Tue, 25 Sep 2007, Evan Cheng wrote: >> the stack adjustment only fastcc was not one of them. Now that fastcc >> can cause tail call optimization i had to change the convention from >> caller pops arguments to callee pops arguments in order to allow tail >> call optimization in a general way. > > Hmmm. Ok. So this is due to X86CallingConv.td changes? Unfortunately
2008 Aug 07
0
[LLVMdev] crash in JIT when running the inliner
Hi, > Today I've been trying to debug a weird bug that makes JIT crash with > certain code and when using the inliner. This may sound weird, but if I > disable the inliner, it doesn't crash. > I include an example gdb dump below. Does something looks wrong? Do you > think it's a bug in JIT or it's just some other piece of code that is > writing on the JIT
2008 Aug 09
1
[LLVMdev] crash in JIT when running the inliner
...tor.h:119) ==11384== by 0x54C50F9: std::vector<llvm::SDValue, std::allocator<llvm::SDValue> >::~vector() (stl_vector.h:272) ==11384== by 0x5683471: llvm::SelectionDAGLowering::~SelectionDAGLowering() (SelectionDAGISel.cpp:496) ==11384== by 0x567683D: llvm::SelectionDAGISel::BuildSelectionDAG(llvm::SelectionDAG&, llvm::BasicBlock*, std::vector<std::pair<llvm::MachineInstr*, unsigned>, std::allocator<std::pair<llvm::MachineInstr*, unsigned> > >&, llvm::FunctionLoweringInfo&) (SelectionDAGISel.cpp:5252) ==11384== by 0x56768C0: llvm::SelectionDAGI...
2007 Sep 25
0
[LLVMdev] RFC: Tail call optimization X86
...zations at this >> point. >> Then checks for eligibility and fix the call nodes after all the >> instructions are lowered. > I am not sure that i understand where this point would be. As I view > it the only place would be in LegalizeDAG.cpp in No, in SelectionDAGISel.cpp:BuildSelectionDAG(). After line 4610, the complete DAG is available. You can add a call here to look at the last call and the terminator to decide whether the call is really a candidate for tail call optimization. You can fix it up at this point. Evan > > SDOperand SelectionDAGLegalize::LegalizeOp(SDOp...
2008 Aug 06
2
[LLVMdev] crash in JIT when running the inliner
Hi, Today I've been trying to debug a weird bug that makes JIT crash with certain code and when using the inliner. This may sound weird, but if I disable the inliner, it doesn't crash. I include an example gdb dump below. Does something looks wrong? Do you think it's a bug in JIT or it's just some other piece of code that is writing on the JIT memory?.. I don't really know
2007 Sep 25
2
[LLVMdev] RFC: Tail call optimization X86
> > FastCC use to be caller pops arguments so there was no stack > > adjustment after the > > call to qux. Now FastCC has callee pops arguments on return semantics > > so the > > x86 backend inserts a stack adjustment after the call. > > > > _array: > > subl $12, %esp > > movss LCPI1_0, %xmm0 > > mulss
2007 Oct 03
4
[LLVMdev] RFC: Tail call optimization X86
On Oct 2, 2007, at 2:27 AM, Arnold Schwaighofer wrote: > Hi all, > > I changed the code that checks whether a tail call is really > eligible for optimization so that it performs the check/fix in > SelectionDAGISel.cpp:BuildSelectionDAG() as suggest by Evan. Also > eliminated an error that caused the remaining failing test cases in > the test-suite. > > The results look very nice (on darwin x86, r42486). > The same number (46) of failing test cases on patched version and > vanilla version. LCCBETA was enabl...
2006 Dec 19
3
[LLVMdev] alias-aware scheduling
...+ PendingLoads.push_back(S.getValue(0)); } + /// IntrinsicCannotAccessMemory - Return true if the specified intrinsic cannot /// access memory and has no other side effects at all. static bool IntrinsicCannotAccessMemory(unsigned IntrinsicID) { @@ -3987,7 +4159,7 @@ void SelectionDAGISel::BuildSelectionDAG(SelectionDAG &DAG, BasicBlock *LLVMBB, std::vector<std::pair<MachineInstr*, unsigned> > &PHINodesToUpdate, FunctionLoweringInfo &FuncInfo) { - SelectionDAGLowering SDL(DAG, TLI, FuncInfo); + SelectionDAGLowering SDL(DAG, TL...
2007 Oct 04
3
[LLVMdev] RFC: Tail call optimization X86
...l be ready for svn comit after one more iteration. :-) Evan On Oct 2, 2007, at 2:27 AM, Arnold Schwaighofer wrote: > Hi all, > > I changed the code that checks whether a tail call is really > eligible for optimization so that it performs the check/fix in > SelectionDAGISel.cpp:BuildSelectionDAG() as suggest by Evan. Also > eliminated an error that caused the remaining failing test cases in > the test-suite. > > The results look very nice (on darwin x86, r42486). > The same number (46) of failing test cases on patched version and > vanilla version. LCCBETA was enabl...