public valState(regMask regs = default, ref ptr <use> uses = default, ref ptr <Value> spill = default, int restoreMin = default, int restoreMax = default, bool needReg = default, bool rematerializeable = default) { this.regs = regs; this.uses = uses; this.spill = spill; this.restoreMin = restoreMin; this.restoreMax = restoreMax; this.needReg = needReg; this.rematerializeable = rematerializeable; }
public edgeState(ref ptr <regAllocState> s = default, ref ptr <Block> p = default, ref ptr <Block> b = default, map <ID, slice <ptr <Value> > > cache = default, slice <ID> cachedVals = default, map <Location, contentRecord> contents = default, slice <dstRecord> destinations = default, slice <dstRecord> extra = default, regMask usedRegs = default, regMask uniqueRegs = default, regMask finalRegs = default, regMask rematerializeableRegs = default) { this.s = s; this.p = p; this.b = b; this.cache = cache; this.cachedVals = cachedVals; this.contents = contents; this.destinations = destinations; this.extra = extra; this.usedRegs = usedRegs; this.uniqueRegs = uniqueRegs; this.finalRegs = finalRegs; this.rematerializeableRegs = rematerializeableRegs; }
public regInfo(slice <inputInfo> inputs = default, regMask clobbers = default, slice <outputInfo> outputs = default) { this.inputs = inputs; this.clobbers = clobbers; this.outputs = outputs; }
public outputInfo(long idx = default, regMask regs = default) { this.idx = idx; this.regs = regs; }
public desiredState(slice <desiredStateEntry> entries = default, regMask avoid = default) { this.entries = entries; this.avoid = avoid; }
public regAllocState(ref ptr <Func> f = default, SparseTree sdom = default, slice <Register> registers = default, register numRegs = default, register SPReg = default, register SBReg = default, register GReg = default, regMask allocatable = default, slice <int> primary = default, slice <slice <liveInfo> > live = default, slice <desiredState> desired = default, slice <valState> values = default, ID sp = default, ID sb = default, slice <ptr <Value> > orig = default, slice <regState> regs = default, regMask nospill = default, regMask used = default, regMask tmpused = default, ref ptr <Block> curBlock = default, ref ptr <use> freeUseRecords = default, slice <slice <endReg> > endRegs = default, slice <slice <startReg> > startRegs = default, slice <slice <ID> > spillLive = default, map <ptr <Value>, bool> copies = default, ref ptr <loopnest> loopnest = default, slice <ptr <Block> > visitOrder = default) { this.f = f; this.sdom = sdom; this.registers = registers; this.numRegs = numRegs; this.SPReg = SPReg; this.SBReg = SBReg; this.GReg = GReg; this.allocatable = allocatable; this.primary = primary; this.live = live; this.desired = desired; this.values = values; this.sp = sp; this.sb = sb; this.orig = orig; this.regs = regs; this.nospill = nospill; this.used = used; this.tmpused = tmpused; this.curBlock = curBlock; this.freeUseRecords = freeUseRecords; this.endRegs = endRegs; this.startRegs = startRegs; this.spillLive = spillLive; this.copies = copies; this.loopnest = loopnest; this.visitOrder = visitOrder; }
public Config(@string arch = default, long PtrSize = default, long RegSize = default, Types Types = default, blockRewriter lowerBlock = default, valueRewriter lowerValue = default, valueRewriter splitLoad = default, slice <Register> registers = default, regMask gpRegMask = default, regMask fpRegMask = default, regMask fp32RegMask = default, regMask fp64RegMask = default, regMask specialRegMask = default, slice <ptr <Register> > GCRegMap = default, sbyte FPReg = default, sbyte LinkReg = default, bool hasGReg = default, ref ptr <obj.Link> ctxt = default, bool optimize = default, bool noDuffDevice = default, bool useSSE = default, bool useAvg = default, bool useHmul = default, bool use387 = default, bool SoftFloat = default, bool Race = default, bool NeedsFpScratch = default, bool BigEndian = default, bool UseFMA = default) { this.arch = arch; this.PtrSize = PtrSize; this.RegSize = RegSize; this.Types = Types; this.lowerBlock = lowerBlock; this.lowerValue = lowerValue; this.splitLoad = splitLoad; this.registers = registers; this.gpRegMask = gpRegMask; this.fpRegMask = fpRegMask; this.fp32RegMask = fp32RegMask; this.fp64RegMask = fp64RegMask; this.specialRegMask = specialRegMask; this.GCRegMap = GCRegMap; this.FPReg = FPReg; this.LinkReg = LinkReg; this.hasGReg = hasGReg; this.ctxt = ctxt; this.optimize = optimize; this.noDuffDevice = noDuffDevice; this.useSSE = useSSE; this.useAvg = useAvg; this.useHmul = useHmul; this.use387 = use387; this.SoftFloat = SoftFloat; this.Race = Race; this.NeedsFpScratch = NeedsFpScratch; this.BigEndian = BigEndian; this.UseFMA = UseFMA; }