Pull Request on 2026年01月25日

dotnet/runtimeにマージされたPull RequestをAIで日本語要約

注意点

このページは、dotnet/runtimeリポジトリにマージされたPull Requestを自動的に収集し、その内容をAIが要約した内容を表示しています。そのため、必ずしも正確な要約ではない場合があります。



#123565 [RyuJit Wasm] fix off by one error for br_table

  • 作成者: @AndyAyersMS
  • 作成日時: 2026年01月23日 22:40:25(UTC)
  • マージ日時: 2026年01月25日 19:58:10(UTC)
  • ラベル: arch-wasm area-CodeGen-coreclr

概要

RyuJIT WAsmコード生成において、br_table命令を用いたswitch文の処理時に発生していた1オフのカウントエラーを修正しました。switch文のターゲット数をカウントする際、デフォルトケースを除外する必要がありますが、以前はこれが正しく処理されていませんでした。

変更内容

  • src/coreclr/jit/codegenwasm.cpp: INS_br_tableに渡されるカウントパラメータを修正し、デフォルトケースを正しく除外するように変更(+7行/-1行)

パフォーマンスへの影響

影響なし(この修正はコード生成の正確性を向上させるもので、パフォーマンスを直接変更するものではありません)

関連Issue

なし

その他

  • このバグ修正はWASM向けのRyuJIT JITコンパイラの正確性を向上させるもの
  • switch文を含むWASMコンパイル済みコードの動作が改善される見込み
  • 変更範囲が限定的(1ファイル、8行の変動)であるため、リスクは低い

#123200 Update macOS minimum version from 12.0 to 14.0, Mac Catalyst to 17.0, and remove obsolete availability checks

  • 作成者: @Copilot
  • 作成日時: 2026年01月15日 00:08:44(UTC)
  • マージ日時: 2026年01月25日 17:58:29(UTC)
  • ラベル: 指定なし

概要

macOS 12 がサポート終了となったため、最小デプロイメントターゲットを macOS 12.0 から 14.0 に、Mac Catalyst を 15.2 から 17.0 に更新しました。併せて、これらの新しい最小要件以下の OS バージョンに対する不要な __builtin_available(Objective-C)および @available(Swift)のランタイムチェックを削除し、コードベースを簡潔化しました。

変更内容

ビルド設定・コンパイラ設定(14ファイル)

  • Directory.Build.props: macOSVersionMin(12.0 → 14.0)、MacCatalystVersionMin(15.2 → 17.0)更新
  • eng/native/configurecompiler.cmake: CMAKE_OSX_DEPLOYMENT_TARGET 更新
  • eng/native/build-commons.sh: Mac Catalyst デプロイメントターゲット更新
  • src/coreclr/nativeaot/ および src/tasks/Crossgen2Tasks/: AppleMinOSVersion 更新
  • src/mono/msbuild/: Mac Catalyst mtriple 引数更新(17.0)

インストーラー設定(2ファイル)

  • arm64/x64 distribution テンプレート: OS バージョン最小要件を 14.0 に更新

テスト設定(8ファイル)

  • Swift interop CMakeLists.txt: CMAKE_OSX_DEPLOYMENT_TARGET を 14.0 に統一

不要なランタイムチェック削除(8ファイル)

  • pal_networkframework.m: macOS 12.3、iOS 15.4、tvOS 15.4 チェック削除(33 行削減)
  • pal_rsa.cpal_ecc.c: macOS 10.15、iOS 13、tvOS 13 チェック削除
  • pal_sec.c: iOS 11.3、tvOS 11.3 チェック削除
  • memorybarrierprocesswide.c: macOS 10.14、iOS 12、tvOS 9 チェックと代替実装削除(18 行削減)
  • mono-codeman.cmono-mmap.c: macOS 11 関連チェック削除

パフォーマンスへの影響

影響なし。本変更はランタイムチェックの削除により、条件分岐が削減され、わずかなコード実行効率の向上が見込まれます。pal_swiftbindings.swift の HKDF 関数については、iOS 14 および tvOS 14 で必要な @available アノテーションは保持されています(macOS では macOS 11 以降で利用可能なため削除)。

関連Issue

なし

その他

  • 互換性への影響: macOS 12 ユーザーは本バージョン以降の .NET を実行できなくなります(Apple の公式サポートライフサイクルに準拠)
  • リスク評価: 低。変更は一貫性のあるバージョン定数更新と EOL OS 対応チェックの削除のみで、削除されたコードは最新の最小バージョン以下の古い実装です
  • Swift interop: HKDF 関数の @available アノテーション(iOS 14、tvOS 14)は、これらプラットフォームの最小サポートバージョン以上で必要なため適切に保持されています

目次