Skip to content

llvm.ldexp.f128 lowering hits assertion failure on arm64 windows #144006

Open
@efriedma-quic

Description

@efriedma-quic
$ llc -mtriple=aarch64-windows-msvc
define void @f7(ptr %p, i32 %a) {
  %val = load fp128, ptr %p
  %call = tail call fast fp128 @llvm.ldexp.f128(fp128 %val, i32 %a)
  store fp128 %call, ptr %p
  ret void
}

        .def    "@feat.00";
        .scl    3;
        .type   0;
        .endef
        .globl  "@feat.00"
"@feat.00" = 0
        .file   "<stdin>"
llc: [...]llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:985: void (anonymous namespace)::SelectionDAGLegalize::LegalizeOp(llvm::SDNode *): Assertion `(TLI.getTypeAction(*DAG.getContext(), Op.getValueType()) == TargetLowering::TypeLegal || Op.getOpcode() == ISD::TargetConstant || Op.getOpcode() == ISD::Register) && "Unexpected illegal type!"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions