Skip to content

[llvm] [M68k] CallSeq assertion failure in SelectionDAG #146213

Open
@knickish

Description

@knickish
; RUN: llc < %s -mtriple=m68k-linux | FileCheck %s

define double @minimized() {
start:
  %_58 = call double null(double 0.000000e+00)
  %_60 = load double, ptr null, align 8
  %_57 = fmul double 0.000000e+00, %_60
  store double %_57, ptr null, align 8
  ret double 0.000000e+00
}

fails with .../bin/FileCheck .../llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp:510: llvm::SDNode* FindCallSeqStart(llvm::SDNode*, unsigned int&, unsigned int&, const llvm::TargetInstrInfo*): Assertion 'Best' failed.

Something appears to be wrong with the callseq_start/end ordering with these instructions, but not yet sure what the exact problem is

Metadata

Metadata

Assignees

No one assigned

    Labels

    backend:m68kcrashPrefer [crash-on-valid] or [crash-on-invalid]llvm:SelectionDAGSelectionDAGISel as well

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions