search for: selectiondagbuild

Displaying 20 results from an estimated 349 matches for "selectiondagbuild".

Did you mean: selectiondagbuilder
2011 Jun 06
0
[LLVMdev] Understanding SelectionDAG construction
Hi Ankur, > The flags "-view-sched-dags".. described in the doc doesn't seem to work. ( > "llc -help" doesn't list it ). as far as I remember, displaying DAGs during compilation is only enabled in "debug builds" [1] of LLVM. You probably have to re-configure and re-compile LLVM to enable this feature. Best regards, Christoph [1]
2011 Jun 06
4
[LLVMdev] Understanding SelectionDAG construction
I am trying to understand the SelectionDAG construction from LLVM IR. I have gone through the doc "The LLVM Target-Independent Code Generator" on LLVM site. This gives a great initial overview. However I am unable to catch the actual control flow for the llvm->selectionDag conversion. The flags "-view-sched-dags".. described in the doc doesn't seem to work. ( "llc
2015 Jan 19
2
[LLVMdev] [INCOMPLETE] [GC] Support wrapping vararg functions in statepoint
...ass functions, I've made the types of all functions a standard vararg (so I can box them). The implementation crashes when I try to read out the value of gc.result. Hints as to what might be wrong? Signed-off-by: Ramkumar Ramachandra <artagnon at gmail.com> --- lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 4 ++-- lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h | 2 +- lib/CodeGen/SelectionDAG/StatepointLowering.cpp | 11 +++++++---- lib/IR/Verifier.cpp | 13 ++++++++----- test/CodeGen/X86/statepoint-call-lowering.ll | 17 +++++++++++++++++ 5 files changed...
2012 Aug 13
3
[LLVMdev] Load serialisation during selection DAG building
I've got a question about how SelectionDAGBuilder treats loads. The LLVM Language Reference Manual explicitly states that the order of volatile operations may be changed relative to non-volatile operations. However, when the SelectionDAGBuilder in LLVM 3.1 encounters a volatile load, it flushes all pending loads and then chains the volatile loa...
2013 Dec 17
3
[LLVMdev] Trying to use patchpoint in MCJIT
...d: (isa<X>(Val) && "cast<Ty>() argument of incompatible type!"), function cast, file /Users/gthomas/research/vmkit4/llvm-src/include/llvm/Support/Casting.h, line 232. With this stack (I only give the relevant part): frame #5: 0x000000010092ed44 libjvm.dylib`llvm::SelectionDAGBuilder::visitPatchpoint() + 3780 at SelectionDAGNodes.h:610 frame #6: 0x000000010091f511 libjvm.dylib`llvm::SelectionDAGBuilder::visitIntrinsicCall(this=0x0000000106ff4d20, I=0x0000000106fea460) + 10961 at SelectionDAGBuilder.cpp:5349 frame #7: 0x0000000100904c4a libjvm.dylib`llvm::SelectionDAGB...
2020 Aug 01
2
Understanding assert in SelectionDAGBuilder.cpp
Hi, I am new to LLVM. I am experimenting with a toy backend. I don't understand "LowerFormalArguments didn't return a valid chain" in SelectionDAGBuilder.cpp file. What is the interface here? What does it mean by returning a Chain? Thanks Jen. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200801/9e468c02/attachment.html>
2011 Feb 14
1
[LLVMdev] broken alignment in stack(caused by bug in SelectionDAGBuilder) causes invalid schedules with r125471 and newer
The following problems happens with architectures, where stack alignment is smaller than the biggest preferred alignment for any data type SP pointer may point anywhere with alignment of stack alignment (4 in our case) SelectionDAGBuilder however calls CreateStackObject with preferred alignment is given data type(8 in our problemaric case. The ABI alignment for this data type is only 4) This means, that the MachineFrameInfo thinks that the stack object is aligned by 8 bytes, even though in reality if may also be aligned only by 4...
2016 Mar 09
3
PGO question
...llows (my environment is 3.9.0, mid Feb trunk). $ clang -c -o main.bc -O2 -m64 -emit-llvm main.c $ opt -pgo-instr-gen main.bc -o main_inst.bc $ llc main_inst.bc -o main_inst.s instrprof failed to lower an increment UNREACHABLE executed at /home/suganuma/tools/llvm_new/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:5245! #0 0x00000000815ecc7a llvm::sys::PrintStackTrace (llvm::raw_ostream&) /home/suganuma/tools/llvm_new/llvm/lib/Support/Unix/Signals.inc:322:0 #1 0x00000000815ed02a PrintStackTraceSignalHandler (void*) /home/suganuma/tools/llvm_new/llvm/lib/Support/Unix/Signals.inc:380:0 #2 0x000000008...
2009 Aug 21
2
[LLVMdev] Possible Typo in SelectionDAGLowering::visitShuffleVector
...e a warning about "if (RangeUse[0] == 0 && RangeUse[0] == 0) {". Can somebody familar with the codebase look over it, maybe this should be "if (RangeUse[0] == 0 && RangeUse[1] == 0) {", otherwise sorry for the noise. Index: F:/dev/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp =================================================================== --- F:/dev/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp (revision 79629) +++ F:/dev/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp (working copy) @@ -2522,7 +2522,7 @@ } } - if (RangeUse[0] ==...
2012 Aug 13
0
[LLVMdev] Load serialisation during selection DAG building
...ying something like Sergei's solution first, and fall back to trying to play with the critical chain only if that can't or won't work. -Hal On Mon, 13 Aug 2012 11:29:18 +0100 Steve Montgomery <stephen.montgomery3 at btinternet.com> wrote: > I've got a question about how SelectionDAGBuilder treats loads. > > The LLVM Language Reference Manual explicitly states that the order > of volatile operations may be changed relative to non-volatile > operations. However, when the SelectionDAGBuilder in LLVM 3.1 > encounters a volatile load, it flushes all pending loads and the...
2013 Dec 18
0
[LLVMdev] Trying to use patchpoint in MCJIT
...cast<Ty>() argument of incompatible > type!"), function cast, file > /Users/gthomas/research/vmkit4/llvm-src/include/llvm/Support/Casting.h, > line 232. > > With this stack (I only give the relevant part): > > frame #5: 0x000000010092ed44 > libjvm.dylib`llvm::SelectionDAGBuilder::visitPatchpoint() + 3780 at > SelectionDAGNodes.h:610 > frame #6: 0x000000010091f511 > libjvm.dylib`llvm::SelectionDAGBuilder::visitIntrinsicCall(this=0x0000000106ff4d20, > I=0x0000000106fea460) + 10961 at SelectionDAGBuilder.cpp:5349 > frame #7: 0x0000000100904c4a > libj...
2013 Dec 18
2
[LLVMdev] Trying to use patchpoint in MCJIT
...t;cast<Ty>() argument of incompatible > type!"), function cast, file > /Users/gthomas/research/vmkit4/llvm-src/include/llvm/Support/Casting.h, > line 232. > > With this stack (I only give the relevant part): > > frame #5: 0x000000010092ed44 > libjvm.dylib`llvm::SelectionDAGBuilder::visitPatchpoint() + 3780 at > SelectionDAGNodes.h:610 > frame #6: 0x000000010091f511 > > libjvm.dylib`llvm::SelectionDAGBuilder::visitIntrinsicCall(this=0x0000000106ff4d20, > I=0x0000000106fea460) + 10961 at SelectionDAGBuilder.cpp:5349 > frame #7: 0x0000000100904c4a >...
2009 Jul 08
4
[LLVMdev] Internal compiler error in SelectionDAGBuild.cpp
Hello, While I was trying to cross-compile Linux OMAP kernel with llvm, I have the following error message. CC arch/arm/kernel/traps.o cc1: /home/wonjeon/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp:5388: void llvm::SelectionDAGLowering::visitInlineAsm(llvm::CallSite): Assertion `(OpInfo.ConstraintType == TargetLowering::C_RegisterClass || OpInfo.ConstraintType == TargetLowering::C_Register) && "Unknown constraint type!"' failed. arch/arm/kernel/traps.c:748: intern...
2010 Sep 25
2
[LLVMdev] Strange exception in SelectionDAGBuilder
...ode to handle GC tracing of "intermediate values" (as described in the GC doc), and I've run into a weird problem. (Note, this has nothing to do with the patch I have proposed, this error occurs with regular old pointer-allocas.) The exception I am getting occurs in this code here in SelectionDAGBuilder.cpp: *case* *Intrinsic*::gcroot: *if* (GFI) { *const* Value *Alloca = I.getArgOperand(0); *const* Constant *TypeMap = cast<Constant>(I.getArgOperand(1)); * FrameIndexSDNode *FI = cast<FrameIndexSDNode>(getValue(Alloca).getNode());* GFI->addStackRoot(FI->ge...
2015 Jan 20
3
[LLVMdev] [INCOMPLETE] [GC] Support wrapping vararg functions in statepoint
Philip Reames wrote: > Any change outside of statepoint lowering is highly suspect. Notice that SelectionDAGBuilder::LowerCallTo (the one I'm modifying) has exactly one other caller: visitCall, which doesn't match vararg functions. Every other codepath directly calls TargetLowering::LowerCallTo, supplying CallLoweringInfo information explicity (it's a structure with a vararg field). I suspect I...
2010 Sep 26
0
[LLVMdev] Strange exception in SelectionDAGBuilder
...quot;intermediate values" (as > described in the GC doc), and I've run into a weird problem. (Note, this has > nothing to do with the patch I have proposed, this error occurs with regular > old pointer-allocas.) > > The exception I am getting occurs in this code here in > SelectionDAGBuilder.cpp: > > *case* *Intrinsic*::gcroot: > > *if* (GFI) { > *const* Value *Alloca = I.getArgOperand(0); > *const* Constant *TypeMap = cast<Constant>(I.getArgOperand(1)); > * FrameIndexSDNode *FI = cast<FrameIndexSDNode>(getValue(Alloca).getNode())...
2015 Aug 14
2
[LLVM RFC] Add llvm.typeid.for intrinsic
...mov r2, r10 addi r2, -16 mov r1, 1 mov r3, 12 call output mov r1, 2 mov r2, r6 mov r3, 8 call output mov r0, 0 ret Signed-off-by: Wang Nan <wangnan0 at huawei.com> --- include/llvm/IR/Intrinsics.td | 1 + lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 27 ++++++++++++++++++++++++ lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h | 1 + 3 files changed, 29 insertions(+) diff --git a/include/llvm/IR/Intrinsics.td b/include/llvm/IR/Intrinsics.td index 83cfebe..8ebeb24 100644 --- a/include/llvm/IR/Intrinsics.td +++ b/include/llvm/IR/Intrins...
2009 Jul 08
0
[LLVMdev] Internal compiler error in SelectionDAGBuild.cpp
On Jul 8, 2009, at 11:16 AM, Won J Jeon wrote: > Hello, > > While I was trying to cross-compile Linux OMAP kernel with llvm, I > have the following error message. > > CC arch/arm/kernel/traps.o > cc1: /home/wonjeon/llvm/lib/CodeGen/SelectionDAG/ > SelectionDAGBuild.cpp:5388: void > llvm::SelectionDAGLowering::visitInlineAsm(llvm::CallSite): > Assertion `(OpInfo.ConstraintType == TargetLowering::C_RegisterClass > || OpInfo.ConstraintType == TargetLowering::C_Register) && "Unknown > constraint type!"' failed. > arc...
2010 Mar 30
1
[LLVMdev] Question on SelectionDAGBuilder
I ran into some odd code being generated today and I came across something that doesn't look quite right. In SelectionDAGBuilder::visitShuffleVector there's some code to see if we can convert the shuffle to an EXTRACT_SUBVECTOR. After computing min/max values of the mask for each operand, there's a look that looks at the ranges and determines whether an EXTRACT_SUBVECTOR can be used: for (int Input=0; Input &...
2012 Oct 30
0
[LLVMdev] Proposed SelectionDAGBuilder patch - load serialisation
I posted to llvmdev a few months ago to ask for advice on the best way to avoid the SelectionDAGBuilder from imposing a constraint whereby a volatile load would be serialised relative to all pending loads. The LLVM LRM says that a volatile load only needs to be serialised relative to other volatile loads and, while it may not matter to most targets, the current behaviour of the SelectionDAGBuilder...