[swift-dev] [Draft Proposal] Refactor SILParser::parseSILInstruction

John McCall rjmccall at apple.com
Wed Jan 13 17:35:38 CST 2016


> On Jan 13, 2016, at 3:25 PM, Jordan Rose via swift-dev <swift-dev at swift.org> wrote:
> Hey, Sergey. It definitely makes sense to refactor this, but I don't think putting methods on SILInstruction is the way to go about it. There's no reason most clients of SIL need to know anything about parsing; from a separation-of-concerns perspective it belongs in a separate header and very likely a separate component (i.e. not lib/SIL/).
> 
> If this were Swift, we could use an extension, but alas. :-)
> 
> That said, I'm not a heavy user of SIL, so someone else from the Swift team with more of a stake should comment.

I agree with you completely.

Also, the SIL instruction parser does not actually have an instance of an instruction to perform virtual dispatch on.  Nor should we introduce the concept of “wireframe” instructions just for the convenience of the parser.  Redundancy between cases here should be addressed with normal redundancy elimination techniques, i.e. macros and templates.

John.


More information about the swift-dev mailing list