- Sort Score
- Result 10 results
- Languages All
Results 11 - 20 of 125 for opAddr (0.84 sec)
-
src/cmd/compile/internal/ssa/nilcheck_test.go
// TestNilcheckAddr verifies that nilchecks of OpAddr constructed values are removed. func TestNilcheckAddr(t *testing.T) { c := testConfig(t) ptrType := c.config.Types.BytePtr fun := c.Fun("entry", Bloc("entry", Valu("mem", OpInitMem, types.TypeMem, 0, nil), Valu("sb", OpSB, c.config.Types.Uintptr, 0, nil), Goto("checkPtr")), Bloc("checkPtr", Valu("ptr1", OpAddr, ptrType, 0, nil, "sb"),
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Nov 17 23:34:11 UTC 2023 - 12.3K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/writebarrier.go
// find SB and SP values in entry block initpos := f.Entry.Pos sp, sb = f.spSb() wbsym := f.fe.Syslook("writeBarrier") wbaddr = f.Entry.NewValue1A(initpos, OpAddr, f.Config.Types.UInt32Ptr, wbsym, sb) wbZero = f.fe.Syslook("wbZero") wbMove = f.fe.Syslook("wbMove") if buildcfg.Experiment.CgoCheck2 { cgoCheckPtrWrite = f.fe.Syslook("cgoCheckPtrWrite")
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/check.go
f.Fatalf("phi length %s does not match pred length %d for block %s", v.LongString(), len(b.Preds), b) } if v.Op == OpAddr { if len(v.Args) == 0 { f.Fatalf("no args for OpAddr %s", v.LongString()) } if v.Args[0].Op != OpSB { f.Fatalf("bad arg to OpAddr %v", v) } } if v.Op == OpLocalAddr { if len(v.Args) != 2 {
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/numberlines.go
switch op { // Note that Nilcheck often vanishes, but when it doesn't, you'd love to start the statement there // so that a debugger-user sees the stop before the panic, and can examine the value. case OpAddr, OpLocalAddr, OpOffPtr, OpStructSelect, OpPhi, OpITab, OpIData, OpIMake, OpStringMake, OpSliceMake, OpStructMake0, OpStructMake1, OpStructMake2, OpStructMake3, OpStructMake4,
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Aug 14 21:26:13 UTC 2023 - 7.8K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/memcombine.go
} base, _ := splitPtr(v.Args[0]) mem := v.Args[1] size := v.Type.Size() if root.Block.Func.Config.arch == "S390X" { // s390x can't handle unaligned accesses to global variables. if base.ptr.Op == OpAddr { return false } } // Check all the entries, extract useful info. type LoadRecord struct { load *Value offset int64 // offset of load address from base shift int64 }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Mar 21 19:45:41 UTC 2024 - 18.4K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/nilcheck.go
// We assume that SlicePtr is non-nil because we do a bounds check // before the slice access (and all cap>0 slices have a non-nil ptr). See #30366. if v.Op == OpAddr || v.Op == OpLocalAddr || v.Op == OpAddPtr || v.Op == OpOffPtr || v.Op == OpAdd32 || v.Op == OpAdd64 || v.Op == OpSub32 || v.Op == OpSub64 || v.Op == OpSlicePtr { nonNilValues[v.ID] = v } } }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Oct 31 20:45:54 UTC 2023 - 11.3K bytes - Viewed (0) -
src/debug/dwarf/const.go
// The debug info encodes value locations like 8(R3) // as a sequence of these op codes. // This package does not implement full expressions; // the opPlusUconst operator is expected by the type parser. const ( opAddr = 0x03 /* 1 op, const addr */ opDeref = 0x06 opConst1u = 0x08 /* 1 op, 1 byte const */ opConst1s = 0x09 /* " signed */ opConst2u = 0x0A /* 1 op, 2 byte const */
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed Oct 18 19:33:30 UTC 2023 - 13.8K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/deadstore.go
var used ir.NameSet // used autos that must be kept // visit the value and report whether any of the maps are updated visit := func(v *Value) (changed bool) { args := v.Args switch v.Op { case OpAddr, OpLocalAddr: // Propagate the address if it points to an auto. n, ok := v.Aux.(*ir.Name) if !ok || n.Class != ir.PAUTO { return } if addr[v] == nil { addr[v] = n changed = true
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Apr 25 20:07:26 UTC 2024 - 11K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/rewritegeneric.go
} // match: (EqPtr (Addr {x} _) (Addr {y} _)) // result: (ConstBool [x == y]) for { for _i0 := 0; _i0 <= 1; _i0, v_0, v_1 = _i0+1, v_1, v_0 { if v_0.Op != OpAddr { continue } x := auxToSym(v_0.Aux) if v_1.Op != OpAddr { continue } y := auxToSym(v_1.Aux) v.reset(OpConstBool) v.AuxInt = boolToAuxInt(x == y) return true } break }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Apr 22 18:24:47 UTC 2024 - 812.2K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/rewrite.go
return !overlap(off1, n1, off2, n2) } // p1 and p2 are not the same, so if they are both OpAddrs then // they point to different variables. // If one pointer is on the stack and the other is an argument // then they can't overlap. switch p1.Op { case OpAddr, OpLocalAddr: if p2.Op == OpAddr || p2.Op == OpLocalAddr || p2.Op == OpSP { return true }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Jun 07 19:02:52 UTC 2024 - 64.2K bytes - Viewed (0)