- Sort Score
- Result 10 results
- Languages All
Results 1 - 9 of 9 for RegAlloc (0.17 sec)
-
src/cmd/compile/internal/ssa/compile.go
{"schedule", "late nilcheck"}, // flagalloc needs instructions to be scheduled. {"schedule", "flagalloc"}, // regalloc needs flags to be allocated first. {"flagalloc", "regalloc"}, // loopRotate will confuse regalloc. {"regalloc", "loop rotate"}, // trim needs regalloc to be done first. {"regalloc", "trim"}, // memcombine works better if fuse happens first, to help merge stores. {"late fuse", "memcombine"},
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Apr 22 14:55:18 UTC 2024 - 18.6K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/value.go
func (v *Value) Reg() int16 { reg := v.Block.Func.RegAlloc[v.ID] if reg == nil { v.Fatalf("nil register for value: %s\n%s\n", v.LongString(), v.Block.Func) } return reg.(*Register).objNum } // Reg0 returns the register assigned to the first output of v, in cmd/internal/obj/$ARCH numbering. func (v *Value) Reg0() int16 { reg := v.Block.Func.RegAlloc[v.ID].(LocPair)[0] if reg == nil {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 03 16:40:22 UTC 2024 - 16.7K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/check.go
if valueMark[v.ID] { f.Fatalf("used value v%d in free list", v.ID) } } // Check to make sure all args dominate uses. if f.RegAlloc == nil { // Note: regalloc introduces non-dominating args. // See TODO in regalloc.go. sdom := f.Sdom() for _, b := range f.Blocks { for _, v := range b.Values { for i, arg := range v.Args { x := arg.Block y := b
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Apr 09 16:41:23 UTC 2024 - 17.6K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/schedule.go
// are not stomped (similar to the closure pointer above). // In particular, they need to come before regular OpArg operations because // of how regalloc places spill code (see regalloc.go:placeSpills:mustBeFirst). if b != f.Entry { f.Fatalf("%s appeared outside of entry block, b=%s", v.Op, b.String()) } score[v.ID] = ScorePhi
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Apr 08 15:53:17 UTC 2024 - 16.4K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/_gen/PPC64Ops.go
// BC 16,0,loop branch ctr // For this purpose, VS32 and VS33 are treated as // scratch registers. Since regalloc does not // track vector registers, even if it could be marked // as clobbered it would have no effect. // TODO: If vector registers are managed by regalloc // mark these as clobbered. // // Bytes not moved by this loop are moved // with a combination of the following instructions,
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 22 19:59:38 UTC 2024 - 43.8K bytes - Viewed (0) -
src/cmd/compile/internal/ssagen/pgen.go
// keep their relative offsets correct, treat them all as used. continue } if needAlloc(ln) { ln.SetUsed(false) } } for _, l := range f.RegAlloc { if ls, ok := l.(ssa.LocalSlot); ok { ls.N.SetUsed(true) } } for _, b := range f.Blocks { for _, v := range b.Values { if n, ok := v.Aux.(*ir.Name); ok { switch n.Class {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 15 15:44:14 UTC 2024 - 13.1K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/op.go
} type regInfo struct { // inputs encodes the register restrictions for an instruction's inputs. // Each entry specifies an allowed register set for a particular input. // They are listed in the order in which regalloc should pick a register // from the register set (most constrained first). // Inputs which do not need registers are not listed. inputs []inputInfo // clobbers encodes the set of registers that are overwritten by
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Apr 22 15:29:10 UTC 2024 - 18.7K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/func.go
dumpFileSeq uint8 // the sequence numbers of dump file. (%s_%02d__%s.dump", funcname, dumpFileSeq, phaseName) IsPgoHot bool // when register allocation is done, maps value ids to locations RegAlloc []Location // temporary registers allocated to rare instructions tempRegs map[ID]*Register // map from LocalSlot to set of Values that we want to store in that slot. NamedValues map[LocalSlot][]*Value
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Jun 10 19:44:43 UTC 2024 - 25.8K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/_gen/genericOps.go
// (particularly stack maps). It takes a memory arg so it // gets correctly ordered with respect to GC safepoints. // It gets compiled to nothing, so its result must in the same // register as its argument. regalloc knows it can use any // allocatable integer register for OpConvert. // arg0=ptr/int arg1=mem, output=int/ptr {name: "Convert", argLength: 2, zeroWidth: true, resultInArg0: true},
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 23 15:49:20 UTC 2024 - 42.6K bytes - Viewed (0)