Skip to content

osx-arm64 ABI changes. #41130

@sdmaclea

Description

@sdmaclea

osx-arm64 has a slightly different calling convention than the arm specified conventions

The obvious things that stood out to me was

  • R18/X18/W18 reserved
  • Removal of packing restrictions on arguments passed on the stack

Tasks from @sandreenko:

  • Support small stack arguments passing in managed <-> native calls;

  • Support small stack arguments passing via reflection (VM changes);

  • Support 16-byte struct passing starting with even register (like x1,x2);

category:correctness
theme:calling-convention
skill-level:expert
cost:large

Metadata

Metadata

Assignees

Labels

Bottom Up WorkNot part of a theme, epic, or user storyUser StoryA single user-facing feature. Can be grouped under an epic.arch-arm64area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIos-macos-bigsur (macOS11)

Type

No type

Projects

Status

Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions