Skip to content

Conversation

@jkotas
Copy link
Member

@jkotas jkotas commented Oct 31, 2025

No description provided.

@dotnet-policy-service
Copy link
Contributor

Tagging subscribers to this area: @mangod9
See info in area-owners.md if you want to be subscribed.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR refactors the jump instruction emission and decoding functions across multiple architectures (amd64, i386, arm, arm64, riscv64, loongarch64, wasm) to eliminate intermediate wrapper functions and consolidate the codebase. The changes rename emitJump and decodeJump to emitBackToBackJump and decodeBackToBackJump directly, removing the historical wrapper layer that was originally designed for IA64 architecture considerations.

Key changes:

  • Consolidated emitJump/decodeJump and emitBackToBackJump/decodeBackToBackJump into single implementations
  • Removed obsolete IA64-specific comments about back-to-back jump optimization requirements
  • Removed unused GetAnyThunkTarget stub implementations from ARM64, RISCV64, and LoongArch64 architectures

Reviewed Changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/coreclr/vm/amd64/cgenamd64.cpp Consolidated isJumpRel32, isJumpRel64, decodeJump32, decodeJump64 into unified isBackToBackJump and decodeBackToBackJump; renamed emitJump to emitBackToBackJump; removed obsolete comment
src/coreclr/vm/amd64/cgencpu.h Updated function declarations to use consolidated emitBackToBackJump, isBackToBackJump, and decodeBackToBackJump; removed inline wrapper implementations
src/coreclr/vm/i386/cgencpu.h Renamed emitJump to emitBackToBackJump and decodeJump to decodeBackToBackJump; removed wrapper implementations and obsolete IA64 comment
src/coreclr/vm/arm/cgencpu.h Renamed emitJump to emitBackToBackJump and decodeJump to decodeBackToBackJump; removed wrapper implementations and obsolete IA64 comment
src/coreclr/vm/arm64/cgencpu.h Renamed emitJump to emitBackToBackJump and decodeJump to decodeBackToBackJump; removed wrapper implementations
src/coreclr/vm/arm64/stubs.cpp Removed unused GetAnyThunkTarget stub implementation
src/coreclr/vm/riscv64/cgencpu.h Renamed emitJump to emitBackToBackJump and decodeJump to decodeBackToBackJump; removed wrapper implementations
src/coreclr/vm/riscv64/stubs.cpp Removed unused GetAnyThunkTarget stub implementation
src/coreclr/vm/loongarch64/cgencpu.h Renamed emitJump to emitBackToBackJump and decodeJump to decodeBackToBackJump; removed wrapper implementations
src/coreclr/vm/loongarch64/stubs.cpp Removed unused GetAnyThunkTarget stub implementation
src/coreclr/vm/wasm/cgencpu.h Removed obsolete IA64-specific comment about back-to-back jump optimization
src/coreclr/vm/precode.h Updated call sites to use isBackToBackJump and decodeBackToBackJump
src/coreclr/vm/dynamicmethod.cpp Updated call site to use emitBackToBackJump
src/coreclr/vm/codeman.cpp Updated call site to use emitBackToBackJump
Comments suppressed due to low confidence (1)

src/coreclr/vm/amd64/cgenamd64.cpp:496

  • The comment references 'emitJump' but this function has been renamed to 'emitBackToBackJump'. Update the comment to: // emitBackToBackJump may throw
        THROWS; // emitBackToBackJump may throw (see emitJump)

@jkotas
Copy link
Member Author

jkotas commented Oct 31, 2025

/ba-g infrastructure timeouts

@jkotas jkotas merged commit 98f204b into dotnet:main Oct 31, 2025
113 of 121 checks passed
@jkotas jkotas deleted the backtobackjump branch October 31, 2025 14:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants