Skip to content

cmd/llvmplugin: update merged test expectations - #44

Closed
zhouguangyuan0718 wants to merge 2 commits into
goallc:go1.27.masterfrom
zhouguangyuan0718:codex/plugin-ctest-merged-expectations
Closed

cmd/llvmplugin: update merged test expectations#44
zhouguangyuan0718 wants to merge 2 commits into
goallc:go1.27.masterfrom
zhouguangyuan0718:codex/plugin-ctest-merged-expectations

Conversation

@zhouguangyuan0718

Copy link
Copy Markdown

Summary

  • update the x86 GoObj indirect-call marker offset to the current call instruction start
  • isolate the pointer-vector alloca failure fixture from the independent realigned-alloca rejection
  • leave production statepoint and GoObj writer behavior unchanged

Production-semantics evidence

go tool objdump shows the x86 register- and memory-indirect CALL instructions at function offset 17, each carrying exactly [0:0]R_CALLIND. Their stack-growth calls remain direct R_CALL:runtime.morestack_noctxt relocations. The direct-call fixture has no R_CALLIND.

The pointer-vector fixture's previous <2 x ptr>, align 16 exceeded the GoObj x86 stack alignment and correctly reached the realigned-allocation diagnostic first. A <1 x ptr>, align 8 fixture has no independent alignment violation and reaches the intended unsupported pointer-vector diagnostic. Pointer-vector support is not expanded.

Validation

  • ctest --test-dir pkg/goallc-llvmplugin --output-on-failure (48/48)
  • focused x86/AArch64 indirect-call relocation tests
  • focused pointer-alloca failure tests
  • plugin-loaded opt -passes=verify for both affected inputs
  • llc -verify-machineinstrs for x86_64 and AArch64 GoObj indirect-call codegen
  • git diff --check

@zhouguangyuan0718

Copy link
Copy Markdown
Author

Superseded by #43: both the X86 indirect-call offset expectation and the pointer-vector fixture alignment fix are already present on go1.27.master. Rebuilt the latest toolchain and confirmed the complete plugin CTest suite passes 48/48, so there is no remaining unique diff to merge.

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