Skip to content

Fix isTriviallyDuplicatable to handle open_pack_element #74842

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
merged 1 commit into from
Jul 1, 2024

Conversation

meg-gupta
Copy link
Contributor

Just like other instructions that produce archetype uuid: open_existential_addr and open_existential_metatype, open_pack_element is not trivially duplicatable.

SILInstruction::clone doesn't know how to clone instructions that produce the archetype uuid. SILCloner is equipped to handle such instructions. Optimizations like LoopRotate use SILInstruction::clone and will be incorrect for such instructions.

rdar://130047619

@meg-gupta meg-gupta force-pushed the addopenpackedgecase branch from f217fc9 to 559c61c Compare June 29, 2024 04:11
@meg-gupta
Copy link
Contributor Author

@swift-ci test

SILInstruction::clone doesn't know how to clone instructions that produce
the archetype uuid. SILCloner is equipped to handle such instructions.

Optimizations like LoopRotate use  SILInstruction::clone and will be
incorrect for such instructions.

rdar://130047619
@meg-gupta meg-gupta force-pushed the addopenpackedgecase branch from 559c61c to 5282194 Compare June 29, 2024 20:42
@meg-gupta
Copy link
Contributor Author

@swift-ci smoke test

Copy link
Contributor

@nate-chandler nate-chandler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@meg-gupta meg-gupta merged commit 12484ff into swiftlang:main Jul 1, 2024
3 checks passed
@meg-gupta meg-gupta deleted the addopenpackedgecase branch July 10, 2024 00:22
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