Skip to content

[InstrRef] Fix mismatch between LiveDebugValues and salvageCopySSA #9889

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

rastogishubham
Copy link

The LiveDebugValues pass and the instruction selector (which calls salvageCopySSA) need to be consistent on what they consider a copy instruction. With llvm#75184, the definition of what a copy instruction is was narrowed for AArch64 to exclude a w->x ORR and treat it as a zero-extend rather than a copy

However, to make sure LiveDebugValues still treats a w->x ORR as a copy, the new function, isCopyLikeInstr was created. We need to make sure that salvageCopySSA also calls that function.

This patch addresses this mismatch.

(cherry picked from commit 44c9e46)

…lvm#124233)

The LiveDebugValues pass and the instruction selector (which calls
salvageCopySSA) need to be consistent on what they consider a copy
instruction. With llvm#75184, the
definition of what a copy instruction is was narrowed for AArch64 to
exclude a w->x ORR and treat it as a zero-extend rather than a copy

However, to make sure LiveDebugValues still treats a w->x ORR as a copy,
the new function, isCopyLikeInstr was created. We need to make sure that
salvageCopySSA also calls that function.

This patch addresses this mismatch.

(cherry picked from commit 44c9e46)
@rastogishubham rastogishubham requested a review from a team as a code owner January 27, 2025 17:30
@rastogishubham
Copy link
Author

@swift-ci please test Linux

@rastogishubham
Copy link
Author

@swift-ci please test macOS

@adrian-prantl adrian-prantl merged commit 6d9fdaf into swiftlang:stable/20240723 Jan 29, 2025
2 checks passed
@rastogishubham rastogishubham deleted the FixDiffStable branch January 30, 2025 22:17
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.

2 participants