[SR-9466] Redo AssignInst lowering in DI #51928
Labels
bug
A deviation from expected or documented behavior. Also: expected but undesirable behavior.
compiler
The Swift compiler in itself
good first issue
Good for newcomers
SILGen
Area → compiler: The SIL generation stage
Additional Detail from JIRA
md5: e1c8a6fadd6a566b95dae2f52adf2edc
Issue Description:
As a follow-up to #21160 we should change DI to not do AssignInst lowering itself.
Instead, amend AssignInst with an initialization kind, either Unknown, Init, Reinit or Assign. New AssignInsts emitted by SILGen begin as Unknown. DI sets them to Init, Reinit or Assign. Then the RawSILInstructionLowering pass rewrites them as follows:
Init becomes a StoreInst Init
Reinit becomes a LoadInst, DeallocRefInst, and StoreInst
Assign becomes a StoreInst Assign
The text was updated successfully, but these errors were encountered: