Skip to content

test: document whole-function assembly kernels (#28447) - #28455

Open
quaesitor-scientiam wants to merge 2 commits into
vlang:masterfrom
quaesitor-scientiam:issue-28447-d3-whole-function-pr
Open

test: document whole-function assembly kernels (#28447)#28455
quaesitor-scientiam wants to merge 2 commits into
vlang:masterfrom
quaesitor-scientiam:issue-28447-d3-whole-function-pr

Conversation

@quaesitor-scientiam

@quaesitor-scientiam quaesitor-scientiam commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Part 3 of #28447: whole-function / naked assembly support.

Summary

  • Document the external .S plus .o linkage path for kernels that need their own frame or
    call instructions.
  • Add a whole-function SHA-256 compression kernel in amd64 assembly.
  • Call the kernel from pure V through an explicit @[c_extern] C ABI declaration and verify the
    SHA-256 abc vector.

Validation

  • GCC full assembly suite: 8 passed, 10 skipped.
  • GCC external-kernel fixture: passed on Win64.
  • Clang external-kernel fixture: passed on Win64.
  • SysV amd64 form: assembled with Clang Linux target.
  • MASM ml64 object plus MSVC pure-V caller: passed locally.
  • Repository MSVC fixture: skipped because the checked-in source is GNU .S; MSVC users can
    provide a MASM-compatible .obj as documented.
  • TCC: fixture skipped because its assembler does not support the .macro directives used by
    this kernel.
  • check-md doc/docs.md: 300 OK, 0 warnings, 3 existing platform/environment errors (dprintf,
    SQLite headers, and malformed ml fence) plus 1 existing formatting error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant