Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

`interrupt_poll` isn't handled by the inliner or by stack maps

オープン
#14,926 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@Shoryamishra61 がすでに取り組んでいます。

2026年10月22日 から。

  • #14947 @Shoryamishra61 による — オープン

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
48/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
rust
領域
compilers

調査の方向性

Start with the reproducer inputs and the two reported panic sites: cranelift/codegen/src/inline.rs:239 and cranelift/codegen/src/machinst/lower.rs:966. Run the shown cargo run -p cranelift-tools test foo.clif cases for the inline and compile paths. Done means both inputs pass without panicking; the issue does not identify the relevant implementation or tests beyond these reproducers.

索引モデルが issue の本文から書いたものです。

説明

cranelift

This input:

test inline
target x86_64

function %callee(i64, i64) -> i64 tail {
block0(v0: i64, v1: i64):
    v2 = interrupt_poll v0, v1, user3
    return v2
}

function %caller(i64, i64) -> i64 system_v {
    fn0 = %callee(i64, i64) -> i64 tail
block0(v0: i64, v1: i64):
    v2 = call fn0(v0, v1)
    return v2
}

fails with:

$ cargo run -p cranelift-tools test foo.clif
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.06s
     Running `target/debug/clif-util test foo.clif`

thread 'worker #3' (2504781) panicked at cranelift/codegen/src/inline.rs:239:21:
should have matched all call instructions, but found: inst0: v2 = interrupt_poll.i64 v0, v1, user3
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[2026-10-21T20:48:10Z ERROR cranelift_filetests::concurrent] FAIL: panicked in worker #3: should have matched all call instructions, but found: inst0: v2 = interrupt_poll.i64 v0, v1, user3
FAIL foo.clif: panicked in worker #3: should have matched all call instructions, but found: inst0: v2 = interrupt_poll.i64 v0, v1, user3
1 tests
Error: 1 failure

and this input:

test compile
target x86_64
target aarch64

function %f(i64, i64) -> i64 tail {
    ss0 = explicit_slot 8
block0(v0: i64, v1: i64):
    v5 = stack_addr.i64 ss0
    store v0, v5
    v2 = interrupt_poll v0, v1, user3, stack_map=[i64 @ ss0+0]
    v3 = load.i64 v5
    v4 = iadd v2, v3
    return v4
}

fails with:

$ cargo run -p cranelift-tools test foo.clif
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.06s
     Running `target/debug/clif-util test foo.clif`

thread 'worker #3' (2506268) panicked at cranelift/codegen/src/machinst/lower.rs:966:17:
assertion `left == right` failed
  left: 0
 right: 1
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[2026-10-21T20:49:41Z ERROR cranelift_filetests::concurrent] FAIL: panicked in worker #3: assertion `left == right` failed
      left: 0
     right: 1
FAIL foo.clif: panicked in worker #3: assertion `left == right` failed
  left: 0
 right: 1
1 tests
Error: 1 failure

cc @erikrose

主要言語
Rust
スター
18.7k
フォーク
1.9k
平均マージ
20時間 33分
マージ済み PR(30日)
377

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

bytecodealliance/wasmtime のほかの issue

bytecodealliance/wasmtime の issue をすべて見る

似ている issue

Rust の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。