[llvm-dev] Segmentation fault in lowerVectorShuffle

Craig Topper via llvm-dev llvm-dev at lists.llvm.org
Thu Sep 14 14:36:56 PDT 2017


These methods are methods that are specific to your code and are not part
of the llvm trunk. It's going to be hard for us to tell you what's wrong
when we can't see your code.

#2  0x0000000000970fed in lowerV16X128VectorShuffle (DL=..., VT=...,
Mask=...,
    V1=..., V2=..., DAG=...)
    at /lib/Target/X86/X86ISelLowering.cpp:13902
#3  0x000000000096f263 in lowerV32I64VectorShuffle (DL=..., Mask=...,
    Zeroable=..., V1=..., V2=..., Subtarget=..., DAG=...)
    at /lib/Target/X86/X86ISelLowering.cpp:13995
#4  0x00000000009368ff in lower2048BitVectorShuffle (DL=..., Mask=...,
VT=...,
    V1=..., V2=..., Zeroable=..., Subtarget=..., DAG=...)

~Craig

On Thu, Sep 14, 2017 at 2:34 PM, hameeza ahmed <hahmed2305 at gmail.com> wrote:

> Hello,
>
> I am getting segmentation fault in vshuffle implementation
> (lowerV32I64VectorShuffle) for v32i64.
>
> After debugging and using bt i am getting the following messages;
>
> (gdb) bt
> #0  llvm::SDNode::isUndef (this=0x7fff00000001)
>     at /include/llvm/CodeGen/SelectionDAGNodes.h:556
> #1  0x00000000009b8038 in llvm::SDValue::isUndef (this=0x7fffffff9d90)
>     at /include/llvm/CodeGen/SelectionDAGNodes.h:989
> #2  0x0000000000970fed in lowerV16X128VectorShuffle (DL=..., VT=...,
> Mask=...,
>     V1=..., V2=..., DAG=...)
>     at /lib/Target/X86/X86ISelLowering.cpp:13902
> #3  0x000000000096f263 in lowerV32I64VectorShuffle (DL=..., Mask=...,
>     Zeroable=..., V1=..., V2=..., Subtarget=..., DAG=...)
>     at /lib/Target/X86/X86ISelLowering.cpp:13995
> #4  0x00000000009368ff in lower2048BitVectorShuffle (DL=..., Mask=...,
> VT=...,
>     V1=..., V2=..., Zeroable=..., Subtarget=..., DAG=...)
>     at /lib/Target/X86/X86ISelLowering.cpp:14159
> #5  0x00000000008bd6ff in lowerVectorShuffle (Op=..., Subtarget=...,
> DAG=...)
>     at /lib/Target/X86/X86ISelLowering.cpp:15065
> #6  0x00000000008b9573 in llvm::X86TargetLowering::LowerOperation (
>     this=0x3079f08, Op=..., DAG=...)
>     at /lib/Target/X86/X86ISelLowering.cpp:24922
> #7  0x00000000016fc710 in (anonymous namespace)::SelectionDAGLegalize::LegalizeOp
> (this=0x7fffffffb7f0, Node=0x310e500)
>     at /lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1111
> #8  0x00000000016fb54c in llvm::SelectionDAG::Legalize (this=0x304ca70)
>     at /lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:4542
> #9  0x0000000001815d45 in llvm::SelectionDAGISel::CodeGenAndEmitDAG (
>     this=0x304c5b0)
>     at /lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:831
> #10 0x000000000181476e in llvm::SelectionDAGISel::SelectBasicBlock (
> ---Type <return> to continue, or q <return> to quit---
>     this=0x304c5b0, Begin=..., End=..., HadTailCall=@0x7fffffffc4fd: false)
>     at /lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:683
> #11 0x00000000018145a5 in llvm::SelectionDAGISel::SelectAllBasicBlocks (
>     this=0x304c5b0, Fn=...)
>     at /lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:1558
>
> #12 0x0000000001812459 in llvm::SelectionDAGISel::runOnMachineFunction (
>     this=0x304c5b0, mf=...)
>     at /lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:504
> #13 0x0000000000834c6b in (anonymous namespace)::X86DAGToDAGISel::runOnMachineFunction
> (this=0x304c5b0, MF=...)
>     at /lib/Target/X86/X86ISelDAGToDAG.cpp:176
> #14 0x000000000104dce1 in llvm::MachineFunctionPass::runOnFunction (
>     this=0x304c5b0, F=...)
>     at /lib/CodeGen/MachineFunctionPass.cpp:62
> #15 0x000000000147823f in llvm::FPPassManager::runOnFunction
> (this=0x3049b70,
>     F=...) at /lib/IR/LegacyPassManager.cpp:1513
> #16 0x0000000001478555 in llvm::FPPassManager::runOnModule
> (this=0x3049b70,
>     M=...) at /lib/IR/LegacyPassManager.cpp:1534
> #17 0x0000000001478cea in (anonymous namespace)::MPPassManager::runOnModule
> (
>     this=0x3034e50, M=...)
>     at /lib/IR/LegacyPassManager.cpp:1590
> #18 0x0000000001478816 in llvm::legacy::PassManagerImpl::run
> (this=0x303f4d0,
>     M=...) at /lib/IR/LegacyPassManager.cpp:1693
> #19 0x0000000001479201 in llvm::legacy::PassManager::run
> (this=0x7fffffffd788,
>     M=...) at /lib/IR/LegacyPassManager.cpp:1724
> #20 0x000000000076be0e in compileModule (argv=0x7fffffffdf78, Context=...)
>     at /tools/llc/llc.cpp:528
> ---Type <return> to continue, or q <return> to quit---
> #21 0x000000000076a2f9 in main (argc=4, argv=0x7fffffffdf78)
>     at /tools/llc/llc.cpp:285
> (gdb)
>
> How to resolve this issue? Please help.
>
> Thank You
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170914/0fe5824c/attachment.html>


More information about the llvm-dev mailing list