Create your own GitHub profile
Sign up for your own profile on GitHub, the best place to host code, manage projects, and build software alongside 50 million developers.
Sign upPinned
1,151 contributions in the last year
Contribution activity
December 2020
Created 29 commits in 1 repository
Created a pull request in apple/swift that received 37 comments
[semantic-arc] Eliminate ARC traffic from phi args that are dead except for said traffic
This PR actually contains two different commits, the second which is the main commit. A change to SemanticARCOptVisitor to make it a SILValueVisit…
Opened 12 other pull requests in 1 repository
apple/swift
10
merged
1
closed
1
open
- [sil-combine] Use high level ARC APIs instead of low level ARC APIs in a few cases to make code work in ossa and non-ossa.
- Canonicalize single value forwarding insts that only have debug_value and destroy_value uses.
- [sil] Teach the verifier that an upcast of an address isn't a consuming use.
- [ownership] Do not insert an end_borrow when calling emitEndBorrowOperation on a value with OwnershipKind::None.
- [ownership][canonicalize] Canonicalize load_borrow the same way we canonicalize load.
- [semantic-arc] Change SemanticARCOptVisitor to be a SILValueVisitor instead of a SILInstructionVisitor.
- [mandatory-combine] Add a canonicalization impl and prepare to use mandatory-combine to test ownership RAUW code
- [cfgoptutils] Add a new overload of addNewEdgeValueToBranch that takes an InstModCallback.
- [basicblock-utils] Add new API: JointPostDominanceSetComputer and its method findJointPostDominatingSet(...).
- [semantic-arc] Prevent future pointer invalidation issues in the OwnedToGuaranteedPhiOp transform.
- [diagnostic-verifier] Add LLVM Options so that Diagnostic Verifier aborts when it emits error diagnostics
- [ownership] Centralize all info about SILInstruction forwarding in the SILInstruction class hierarchy itself.
Reviewed 8 pull requests in 1 repository
apple/swift 8 pull requests
- Add a CanonicalOSSALifetime utility
- [sil-combine] Use high level ARC APIs instead of low level ARC APIs in a few cases to make code work in ossa and non-ossa.
- Enable RLE on OSSA
- Introduce OperandOwnership to classify OSSA uses.
- Remove SILArgumentConvention::Direct_Deallocating
- [basicblock-utils] Add new API: JointPostDominanceSetComputer and its method findJointPostDominatingSet(...).
- Enable GenericSpecializer on OSSA by default
- Enable CSE on OSSA