Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 9 of 9 for opcodeTable (0.27 sec)

  1. src/cmd/compile/internal/ssa/value.go

    	}
    	return fmt.Sprintf("v%d", v.ID)
    }
    
    func (v *Value) AuxInt8() int8 {
    	if opcodeTable[v.Op].auxType != auxInt8 && opcodeTable[v.Op].auxType != auxNameOffsetInt8 {
    		v.Fatalf("op %s doesn't have an int8 aux field", v.Op)
    	}
    	return int8(v.AuxInt)
    }
    
    func (v *Value) AuxUInt8() uint8 {
    	if opcodeTable[v.Op].auxType != auxUInt8 {
    		v.Fatalf("op %s doesn't have a uint8 aux field", v.Op)
    	}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 03 16:40:22 UTC 2024
    - 16.7K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/_gen/main.go

    	fmt.Fprintln(w, "}")
    
    	fmt.Fprintln(w, "func (o Op) Asm() obj.As {return opcodeTable[o].asm}")
    	fmt.Fprintln(w, "func (o Op) Scale() int16 {return int16(opcodeTable[o].scale)}")
    
    	// generate op string method
    	fmt.Fprintln(w, "func (o Op) String() string {return opcodeTable[o].name }")
    
    	fmt.Fprintln(w, "func (o Op) SymEffect() SymEffect { return opcodeTable[o].symEffect }")
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Jan 19 22:42:34 UTC 2023
    - 16.9K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/nilcheck.go

    			// Find any pointers that this op is guaranteed to fault on if nil.
    			var ptrstore [2]*Value
    			ptrs := ptrstore[:0]
    			if opcodeTable[v.Op].faultOnNilArg0 && (faultOnLoad || v.Type.IsMemory()) {
    				// On AIX, only writing will fault.
    				ptrs = append(ptrs, v.Args[0])
    			}
    			if opcodeTable[v.Op].faultOnNilArg1 && (faultOnLoad || (v.Type.IsMemory() && v.Op != OpPPC64LoweredMove)) {
    				// On AIX, only writing will fault.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Oct 31 20:45:54 UTC 2023
    - 11.3K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/schedule.go

    	for _, b := range f.Blocks {
    		for _, v := range b.Values {
    			for i, a := range v.Args {
    				if a.Op == OpSPanchored || opcodeTable[a.Op].nilCheck {
    					v.SetArg(i, a.Args[0])
    				}
    			}
    		}
    		for i, c := range b.ControlValues() {
    			if c.Op == OpSPanchored || opcodeTable[c.Op].nilCheck {
    				b.ReplaceControl(i, c.Args[0])
    			}
    		}
    	}
    	for _, b := range f.Blocks {
    		i := 0
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 08 15:53:17 UTC 2024
    - 16.4K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/addressingmodes.go

    			// has the pointer in arg[1] and the index in arg[2].
    			ptrIndex := 0
    			if opcodeTable[v.Op].resultInArg0 {
    				ptrIndex = 1
    			}
    			p := v.Args[ptrIndex]
    			c, ok := combine[[2]Op{v.Op, p.Op}]
    			if !ok {
    				continue
    			}
    			// See if we can combine the Aux/AuxInt values.
    			switch [2]auxType{opcodeTable[v.Op].auxType, opcodeTable[p.Op].auxType} {
    			case [2]auxType{auxSymOff, auxInt32}:
    				// TODO: introduce auxSymOff32
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Jul 26 17:19:57 UTC 2023
    - 24.3K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/ssa/likelyadjust.go

    	}
    
    	inner.outer = outer
    	outer.isInner = false
    }
    
    func checkContainsCall(bb *Block) bool {
    	if bb.Kind == BlockDefer {
    		return true
    	}
    	for _, v := range bb.Values {
    		if opcodeTable[v.Op].call {
    			return true
    		}
    	}
    	return false
    }
    
    type loopnest struct {
    	f              *Func
    	b2l            []*loop
    	po             []*Block
    	sdom           SparseTree
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Oct 31 21:41:20 UTC 2022
    - 15.4K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/ssa/check.go

    		}
    
    		for _, v := range b.Values {
    			// Check to make sure argument count makes sense (argLen of -1 indicates
    			// variable length args)
    			nArgs := opcodeTable[v.Op].argLen
    			if nArgs != -1 && int32(len(v.Args)) != nArgs {
    				f.Fatalf("value %s has %d args, expected %d", v.LongString(),
    					len(v.Args), nArgs)
    			}
    
    			// Check to make sure aux values make sense.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 09 16:41:23 UTC 2024
    - 17.6K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/ssa/config.go

    			c.useSSE = false
    		}
    	}
    
    	if ctxt.Flag_shared {
    		// LoweredWB is secretly a CALL and CALLs on 386 in
    		// shared mode get rewritten by obj6.go to go through
    		// the GOT, which clobbers BX.
    		opcodeTable[Op386LoweredWB].reg.clobbers |= 1 << 3 // BX
    	}
    
    	// Create the GC register map index.
    	// TODO: This is only used for debug printing. Maybe export config.registers?
    	gcRegMapSize := int16(0)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 02 16:11:47 UTC 2024
    - 12.9K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssa/branchelim.go

    	// or anything else with side-effects
    	for _, v := range b.Values {
    		if v.Op == OpPhi || isDivMod(v.Op) || isPtrArithmetic(v.Op) || v.Type.IsMemory() ||
    			v.MemoryArg() != nil || opcodeTable[v.Op].hasSideEffects {
    			return false
    		}
    	}
    	return true
    }
    
    func isDivMod(op Op) bool {
    	switch op {
    	case OpDiv8, OpDiv8u, OpDiv16, OpDiv16u,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Nov 30 17:46:51 UTC 2022
    - 12.7K bytes
    - Viewed (0)
Back to top