Skip to content

ci: smoke test arm64e stage1 Apple targets#7

Closed
cypherair wants to merge 25 commits into
carry/cypherair-arm64e-toolchainfrom
fix/arm64e-stage1-smoke-apple-targets
Closed

ci: smoke test arm64e stage1 Apple targets#7
cypherair wants to merge 25 commits into
carry/cypherair-arm64e-toolchainfrom
fix/arm64e-stage1-smoke-apple-targets

Conversation

@cypherair
Copy link
Copy Markdown
Owner

Summary

  • expand the packaged stage1 generic-array/rustversion smoke beyond arm64e-apple-darwin
  • run clean smoke target dirs for arm64e-apple-darwin, arm64e-apple-ios, and arm64e-apple-visionos
  • keep the existing prerelease manifest shape and diagnostics artifact path

Verification

  • Ruby YAML parsed arm64e-stage1-prerelease.yml
  • git diff --check passed

cypherair added 25 commits May 11, 2026 23:50
The original version of this PR incorrectly added a target maintainer without them agreeing to it. I used Codex to create that version and did not review it carefully enough before opening it.

Correct the maintainer entry and update the Tier 3 target documentation.
Add the trailing newline required by tidy.
Apple arm64e target specs enable ptrauth with +paca and +pacg. Rust also ties those features together because they represent LLVM pauth.

The existing Apple arm64e check only matched the Rust paca and pacg feature names, so the LLVM spelling could still be forwarded by flag_to_backend_features. Apply the same forbidden-disable check to pauth and skip adding any forbidden ptrauth disable to the backend feature list after the diagnostic.

Add UI coverage for the arm64e-apple-darwin -pauth spelling and update the diagnostic snapshots.
Fork push workflows can run in GitHub Actions with only the triggering branch fetched. In that shape refs/remotes/origin/main may be absent, and a shallow feature branch may not contain any bors-authored upstream commit.

After the CI upstream detection stopped blindly trusting HEAD^1, that missing upstream case could fall through to searching HEAD and then panic when no upstream commit was found. Treat it as MissingUpstream instead, so download-rustc/download-ci-llvm if-unchanged conservatively disables CI downloads and builds locally.

Add a regression test for the shallow fork-push shape without an origin/main ref.
Earlier commits in this PR added default ptrauth function attrs, ptrauth call operand bundles, and late stripping of unsupported ptrauth bundles.

Fix gaps in those new paths: exclude LLVM InlineAsm from the indirect call predicate, apply the default attrs to @main and __rust_try, and preserve metadata/debug locations on calls rebuilt by removeOperandBundle.
Run fork-targeted ptrauth codegen checks through the arm64e wildcard so new tests added on the ptrauth branch are covered.

Add manual and weekly extended validation for codegen, assembly, Mach-O metadata, ptrauth flag UI tests, and the arm64e stage1 std build.
@cypherair cypherair force-pushed the carry/cypherair-arm64e-toolchain branch from 05e4abf to ffa5e31 Compare May 19, 2026 07:50
@cypherair
Copy link
Copy Markdown
Owner Author

Closed after incorporating this stage1 Apple arm64e smoke-test change into the rebased carry/cypherair-arm64e-toolchain branch. The new carry head is ffa5e31 and the stage1 prerelease published successfully as rust-arm64e-stage1-20260519T081052Z-ffa5e31-r26083865790-a1.

@cypherair cypherair closed this May 19, 2026
@cypherair cypherair deleted the fix/arm64e-stage1-smoke-apple-targets branch May 19, 2026 12:59
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