Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 17 for optab (0.04 sec)

  1. src/cmd/internal/obj/ppc64/asm_test.go

    			}
    		}
    	}
    }
    
    // The optab size should remain constant when reinitializing the PPC64 assembler backend.
    func TestOptabReinit(t *testing.T) {
    	buildcfg.GOOS = "linux"
    	buildcfg.GOARCH = "ppc64le"
    	buildcfg.GOPPC64 = 8
    	buildop(nil)
    	optabLen := len(optab)
    	buildcfg.GOPPC64 = 9
    	buildop(nil)
    	reinitOptabLen := len(optab)
    	if reinitOptabLen != optabLen {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Feb 09 22:14:57 UTC 2024
    - 17.3K bytes
    - Viewed (0)
  2. src/cmd/internal/obj/arm64/a.out.go

    const (
    	BIG = 2048 - 8
    )
    
    const (
    	/* mark flags */
    	LABEL = 1 << iota
    	LEAF
    	FLOAT
    	BRANCH
    	LOAD
    	FCMP
    	SYNC
    	LIST
    	FOLL
    	NOSCHED
    )
    
    const (
    	// optab is sorted based on the order of these constants
    	// and the first match is chosen.
    	// The more specific class needs to come earlier.
    	C_NONE   = iota + 1 // starting from 1, leave unclassified Addr's class as 0
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Oct 18 17:56:30 UTC 2023
    - 18.1K bytes
    - Viewed (0)
  3. src/cmd/internal/obj/link.go

    	As       As        // assembler opcode
    	Reg      int16     // 2nd source operand
    	RegTo2   int16     // 2nd destination operand
    	Mark     uint16    // bitmask of arch-specific items
    	Optab    uint16    // arch-specific opcode index
    	Scond    uint8     // bits that describe instruction suffixes (e.g. ARM conditions, RISCV Rounding Mode)
    	Back     uint8     // for x86 back end: backwards branch state
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 15 19:57:43 UTC 2024
    - 33.1K bytes
    - Viewed (0)
  4. src/cmd/internal/obj/arm64/obj7.go

    				// same check.
    				shift = 7
    			}
    			p.From.Type = obj.TYPE_REG
    			p.From.Reg = int16(REG_LSL + r + (shift&7)<<5)
    			p.From.Offset = 0
    		}
    	}
    }
    
    func nocache(p *obj.Prog) {
    	p.Optab = 0
    	p.From.Class = 0
    	p.To.Class = 0
    }
    
    var unaryDst = map[obj.As]bool{
    	AWORD:  true,
    	ADWORD: true,
    	ABL:    true,
    	AB:     true,
    	ACLREX: true,
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Nov 08 05:46:32 UTC 2023
    - 28.4K bytes
    - Viewed (0)
  5. src/cmd/internal/obj/ppc64/obj9.go

    			p.As = AANDISCC
    			p.From.Offset >>= 16
    		}
    
    	// To maintain backwards compatibility, we accept some 4 argument usage of
    	// several opcodes which was likely not intended, but did work. These are not
    	// added to optab to avoid the chance this behavior might be used with newer
    	// instructions.
    	//
    	// Rewrite argument ordering like "ADDEX R3, $3, R4, R5" into
    	//                                "ADDEX R3, R4, $3, R5"
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 18:17:17 UTC 2024
    - 40.8K bytes
    - Viewed (0)
  6. src/cmd/link/internal/ld/symtab.go

    	slice(itablinkSym, nitablinks)
    
    	// The ptab slice
    	if ptab := ldr.Lookup("go:plugin.tabs", 0); ptab != 0 && ldr.AttrReachable(ptab) {
    		ldr.SetAttrLocal(ptab, true)
    		if ldr.SymType(ptab) != sym.SRODATA {
    			panic(fmt.Sprintf("go:plugin.tabs is %v, not SRODATA", ldr.SymType(ptab)))
    		}
    		nentries := uint64(len(ldr.Data(ptab)) / 8) // sizeof(nameOff) + sizeof(typeOff)
    		slice(ptab, nentries)
    	} else {
    		nilSlice()
    	}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Sep 13 16:29:40 UTC 2023
    - 29.2K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/walk/switch.go

    // from an interface's descriptor word (whether a *runtime._type or
    // *runtime.itab pointer).
    func typeHashFieldOf(pos src.XPos, itab *ir.UnaryExpr) *ir.SelectorExpr {
    	if itab.Op() != ir.OITAB {
    		base.Fatalf("expected OITAB, got %v", itab.Op())
    	}
    	var hashField *types.Field
    	if itab.X.Type().IsEmptyInterface() {
    		// runtime._type's hash field
    		if rtypeHashField == nil {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 04 17:34:01 UTC 2024
    - 30.1K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/typecheck/expr.go

    			n.SetType(nil)
    			return n
    		}
    	}
    	return n
    }
    
    // tcITab typechecks an OITAB node.
    func tcITab(n *ir.UnaryExpr) ir.Node {
    	n.X = Expr(n.X)
    	t := n.X.Type()
    	if t == nil {
    		n.SetType(nil)
    		return n
    	}
    	if !t.IsInterface() {
    		base.Fatalf("OITAB of %v", t)
    	}
    	n.SetType(types.NewPtr(types.Types[types.TUINTPTR]))
    	return n
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 04 14:29:45 UTC 2024
    - 23.1K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/walk/walk.go

    			ir.OAND, ir.OANDNOT, ir.OLSH, ir.OOR, ir.ORSH, ir.OXOR, ir.OCOMPLEX, ir.OMAKEFACE,
    			ir.OADDR, ir.OBITNOT, ir.ONOT, ir.OPLUS,
    			ir.OCAP, ir.OIMAG, ir.OLEN, ir.OREAL,
    			ir.OCONVNOP, ir.ODOT,
    			ir.OCFUNC, ir.OIDATA, ir.OITAB, ir.OSPTR,
    			ir.OBYTES2STRTMP, ir.OGETG, ir.OGETCALLERPC, ir.OGETCALLERSP, ir.OSLICEHEADER, ir.OSTRINGHEADER:
    			// ok: operations that don't require function calls.
    			// Expand as needed.
    		}
    
    		return false
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Feb 27 20:56:00 UTC 2024
    - 10.4K bytes
    - Viewed (0)
  10. src/cmd/compile/internal/typecheck/typecheck.go

    	case ir.OUNSAFESTRINGDATA:
    		n := n.(*ir.UnaryExpr)
    		return tcUnsafeData(n)
    
    	case ir.OITAB:
    		n := n.(*ir.UnaryExpr)
    		return tcITab(n)
    
    	case ir.OIDATA:
    		// Whoever creates the OIDATA node must know a priori the concrete type at that moment,
    		// usually by just having checked the OITAB.
    		n := n.(*ir.UnaryExpr)
    		base.Fatalf("cannot typecheck interface data %v", n)
    		panic("unreachable")
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 20 19:08:34 UTC 2024
    - 30.5K bytes
    - Viewed (0)
Back to top