Skip to content

cmd/compile: infinite loop in the inliner #73425

Closed
@randall77

Description

@randall77
git clone https://gitlab.com/cznic/libsamplerate
cd libsamplerate
GOARCH=amd64 ~/go1.24.2/bin/go build

A sample of the infinite loop it appears to be in:

  * frame #0: 0x00000001006e7a34 compile`cmd/compile/internal/ir.(*CallExpr).doChildren + 52
    frame #1: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #2: 0x00000001006f6934 compile`cmd/compile/internal/ir.(*ParenExpr).doChildren + 180
    frame #3: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #4: 0x00000001007005b4 compile`cmd/compile/internal/ir.(*UnaryExpr).doChildren + 180
    frame #5: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #6: 0x00000001006eb8e4 compile`cmd/compile/internal/ir.(*ConvExpr).doChildren + 180
    frame #7: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #8: 0x00000001006f3b10 compile`cmd/compile/internal/ir.(*KeyExpr).doChildren + 224
    frame #9: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #10: 0x00000001006eae10 compile`cmd/compile/internal/ir.(*CompLitExpr).doChildren + 224
    frame #11: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #12: 0x00000001006fdb94 compile`cmd/compile/internal/ir.(*StructKeyExpr).doChildren + 180
    frame #13: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #14: 0x00000001006eae10 compile`cmd/compile/internal/ir.(*CompLitExpr).doChildren + 224
    frame #15: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #16: 0x00000001006e5270 compile`cmd/compile/internal/ir.(*AssignStmt).doChildren + 224
    frame #17: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #18: 0x00000001006dd834 compile`cmd/compile/internal/ir.(*Func).doChildren + 100
    frame #19: 0x0000000100703d78 compile`cmd/compile/internal/ir.Any.func1 + 104
    frame #20: 0x0000000100703cd0 compile`cmd/compile/internal/ir.Any + 176
    frame #21: 0x0000000100b83348 compile`cmd/compile/internal/inline.canInlineCallExpr + 2648
    frame #22: 0x0000000100b83ea4 compile`cmd/compile/internal/inline.mkinlcall + 52
    frame #23: 0x0000000100b81e98 compile`cmd/compile/internal/inline.TryInlineCall + 296
    frame #24: 0x0000000100c6acf0 compile`cmd/compile/internal/inline/interleaved.(*inlClosureState).edit + 144
    frame #25: 0x0000000100d72b58 compile`cmd/compile/internal/gc.Main.DevirtualizeAndInlinePackage.func2.1 + 152
    frame #26: 0x00000001006de3a4 compile`cmd/compile/internal/ir.WithFunc + 148
    frame #27: 0x0000000100d72a58 compile`cmd/compile/internal/gc.Main.DevirtualizeAndInlinePackage.func2 + 392
    frame #28: 0x0000000100701e80 compile`cmd/compile/internal/ir.(*bottomUpVisitor).visit + 880
    frame #29: 0x0000000100701ad4 compile`cmd/compile/internal/ir.VisitFuncsBottomUp + 196
    frame #30: 0x0000000100d711c4 compile`cmd/compile/internal/gc.Main + 4484
    frame #31: 0x0000000100d98650 compile`main.main + 272
    frame #32: 0x0000000100533844 compile`runtime.main + 644

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugReportIssues describing a possible bug in the Go implementation.CriticalA critical problem that affects the availability or correctness of production systems built using GoNeedsFixThe path to resolution is known, but the work has not been done.compiler/runtimeIssues related to the Go compiler and/or runtime.

    Type

    No type

    Projects

    Status

    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions