/** Copyright: Copyright (c) 2017-2019 Andrey Penechko. License: $(WEB boost.org/LICENSE_1_0.txt, Boost License 1.0). Authors: Andrey Penechko. */ /// IR Phi function entity module vox.ir.ir_phi; import vox.all; /// @(IrValueKind.phi) struct IrPhi { IrIndex blockIndex; // null if removed IrIndex result; IrIndex var; IrIndex nextPhi; IrIndex prevPhi; // order of arguments is the same as blockIndex.predecessors IrSmallArray args; bool isRemoved() { return blockIndex.isUndefined; } }