- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 15 for OpSelectN (0.24 sec)
-
src/cmd/compile/internal/ssa/expand_calls.go
} return mem } // Convert scalar OpArg into the proper OpWhateverArg instruction // Convert scalar OpSelectN into perhaps-differently-indexed OpSelectN // Convert aggregate OpArg into Make of its parts (which are eventually scalars) // Convert aggregate OpSelectN into Make of its parts (which are eventually scalars) // Returns the converted value. // // - "pos" the position for any generated instructions
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Nov 28 05:13:40 UTC 2023 - 31.9K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/lower.go
if !opcodeTable[v.Op].generic { continue // lowered } switch v.Op { case OpSP, OpSPanchored, OpSB, OpInitMem, OpArg, OpArgIntReg, OpArgFloatReg, OpPhi, OpVarDef, OpVarLive, OpKeepAlive, OpSelect0, OpSelect1, OpSelectN, OpConvert, OpInlMark, OpWBend: continue // ok not to lower case OpMakeResult: if b.Controls[0] == v { continue } case OpGetG: if f.Config.hasGReg {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Feb 16 00:16:13 UTC 2023 - 1.7K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/tuple.go
fallthrough case OpSelect0: tuple = selector.Args[0] if !tuple.Type.IsTuple() { f.Fatalf("arg of tuple selector %s is not a tuple: %s", selector.String(), tuple.LongString()) } case OpSelectN: tuple = selector.Args[0] idx = int(selector.AuxInt) if !tuple.Type.IsResults() { f.Fatalf("arg of result selector %s is not a results: %s", selector.String(), tuple.LongString()) } }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Feb 26 02:52:33 UTC 2021 - 2K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/writebarrier.go
c := f.Config if f.ABIDefault == f.ABI1 && len(c.intParamRegs) >= 1 { if v.Op != OpSelectN || v.AuxInt != 0 { return nil, false } mem = select1[v.Args[0].ID] if mem == nil { return nil, false } } else { if v.Op != OpLoad { return nil, false } mem = v.MemoryArg() if mem.Op != OpSelectN { return nil, false } if mem.Type != types.TypeMem { return nil, false
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Sep 08 19:09:14 UTC 2023 - 23.5K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/tighten.go
for _, v := range b.Values { if v.Op.isLoweredGetClosurePtr() { // Must stay in the entry block. continue } switch v.Op { case OpPhi, OpArg, OpArgIntReg, OpArgFloatReg, OpSelect0, OpSelect1, OpSelectN: // Phis need to stay in their block. // Arg must stay in the entry block. // Tuple selectors must stay with the tuple generator. // SelectN is typically, ultimately, a register. continue }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 16 01:01:38 UTC 2023 - 7.7K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/loopreschedchecks.go
resched := f.fe.Syslook("goschedguarded") call := sched.NewValue1A(bb.Pos, OpStaticCall, types.TypeResultMem, StaticAuxCall(resched, bb.Func.ABIDefault.ABIAnalyzeTypes(nil, nil)), mem0) mem1 := sched.NewValue1I(bb.Pos, OpSelectN, types.TypeMem, 0, call) sched.AddEdgeTo(h) headerMemPhi.AddArg(mem1) bb.Succs[p.i] = Edge{test, 0} test.Preds = append(test.Preds, Edge{bb, p.i})
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Aug 22 21:17:10 UTC 2023 - 16K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/cse.go
} // OpSelect is a pseudo-op. We need to be more aggressive // regarding CSE to keep multiple OpSelect's of the same // argument from existing. if v.Op != OpSelect0 && v.Op != OpSelect1 && v.Op != OpSelectN { if tc := v.Type.Compare(w.Type); tc != types.CMPeq { return tc } } if v.Aux != w.Aux { if v.Aux == nil { return types.CMPlt } if w.Aux == nil { return types.CMPgt
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Oct 31 21:41:20 UTC 2022 - 9.6K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/schedule.go
case v.Type.IsMemory(): // Schedule stores as early as possible. This tends to // reduce register pressure. score[v.ID] = ScoreMemory case v.Op == OpSelect0 || v.Op == OpSelect1 || v.Op == OpSelectN: // Tuple selectors need to appear immediately after the instruction // that generates the tuple. score[v.ID] = ScoreReadTuple case v.hasFlagInput():
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/ssagen/ssa.go
if len(pa.Registers) == 0 && !ssa.CanSSA(t) { addr := s.newValue1I(ssa.OpSelectNAddr, types.NewPtr(t), which, c) return s.rawLoad(t, addr) } return s.newValue1I(ssa.OpSelectN, t, which, c) } func (s *state) resultAddrOfCall(c *ssa.Value, which int64, t *types.Type) *ssa.Value { aux := c.Aux.(*ssa.AuxCall) pa := aux.ParamAssignmentForResult(which) if len(pa.Registers) == 0 {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Jun 10 19:44:43 UTC 2024 - 284.9K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/regalloc.go
b.Values = append(b.Values, v) s.advanceUses(v) s.sb = v.ID continue } if v.Op == OpSelect0 || v.Op == OpSelect1 || v.Op == OpSelectN { if s.values[v.ID].needReg { if v.Op == OpSelectN { s.assignReg(register(s.f.getHome(v.Args[0].ID).(LocResults)[int(v.AuxInt)].(*Register).num), v, v) } else { var i = 0 if v.Op == OpSelect1 { i = 1
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Nov 21 17:49:56 UTC 2023 - 87.2K bytes - Viewed (0)