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

[SIL] NFC: remove TailAllocatedOperandList template #13628

merged 18 commits into from Dec 27, 2017


None yet
2 participants

davezarzycki commented Dec 27, 2017

Introduces InstructionBaseWithTrailingOperands to wrap llvm::TrailingObjects and remove TailAllocatedOperandList, which is less safe, less feature rich, and less space efficient when compared to the LLVM type. This new template also helps automate boilerplate logic like getAllOperands() and Operand destruction.

davezarzycki added some commits Dec 23, 2017

[SIL] NFC: Refactor UnaryInstructionWithTypeDependentOperandsBase
Refactor UnaryInstructionWithTypeDependentOperandsBase into two template
classes, where the original template now subclasses a simpler template
called "InstructionBaseWithTrailingObjects".
[SIL] NFC: Migrate CondBranchInst to InstructionBaseWithTrailingOperands
Also, repack misc bits and stop hard coding the number of fixed operands.
[SIL] NFC: Remove TailAllocatedOperandList template
Please use InstructionBaseWithTrailingOperands template now. It is more type safe and more space efficient.

This comment has been minimized.


davezarzycki commented Dec 27, 2017

@swift-ci please test and merge

@swift-ci swift-ci merged commit 4d83e8c into apple:master Dec 27, 2017

4 of 5 checks passed

Test and Merge Build started.
Swift Test Linux Platform 10654 tests run, 0 skipped, 0 failed.
Swift Test Linux Platform (smoke test)
Swift Test OS X Platform 53390 tests run, 0 skipped, 0 failed.
Swift Test OS X Platform (smoke test)

@davezarzycki davezarzycki deleted the davezarzycki:sil_nfc_remove_TailAllocatedOperandList branch Dec 27, 2017

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