Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 9 of 9 for ODCL (0.04 sec)

  1. test/fixedbugs/issue15747b.go

    // compile
    
    // Copyright 2016 The Go Authors.  All rights reserved.
    // Use of this source code is governed by a BSD-style
    // license that can be found in the LICENSE file.
    
    // Issue 15747: If an ODCL is dropped, for example when inlining,
    // then it's easy to end up not initializing the '&x' pseudo-variable
    // to point to an actual allocation. The liveness analysis will detect
    // this and abort the computation, so this test just checks that the
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Sep 15 02:39:16 UTC 2017
    - 539 bytes
    - Viewed (0)
  2. src/cmd/compile/internal/walk/stmt.go

    	case ir.ORECV:
    		n := n.(*ir.UnaryExpr)
    		return walkRecv(n)
    
    	case ir.OBREAK,
    		ir.OCONTINUE,
    		ir.OFALL,
    		ir.OGOTO,
    		ir.OLABEL,
    		ir.OJUMPTABLE,
    		ir.OINTERFACESWITCH,
    		ir.ODCL,
    		ir.OCHECKNIL:
    		return n
    
    	case ir.OBLOCK:
    		n := n.(*ir.BlockStmt)
    		walkStmtList(n.List)
    		return n
    
    	case ir.OCASE:
    		base.Errorf("case statement out of place")
    		panic("unreachable")
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Oct 06 15:42:30 UTC 2023
    - 4.7K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/walk/order.go

    					}
    					// If this is case x := <-ch or case x, y := <-ch, the case has
    					// the ODCL nodes to declare x and y. We want to delay that
    					// declaration (and possible allocation) until inside the case body.
    					// Delete the ODCL nodes here and recreate them inside the body below.
    					if colas {
    						if len(init) > 0 && init[0].Op() == ir.ODCL && init[0].(*ir.Decl).X == n {
    							init = init[1:]
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Mar 08 02:00:33 UTC 2024
    - 42.7K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/typecheck/typecheck.go

    		if n.X.Op() == ir.ONAME && ir.IsAutoTmp(n.X) {
    			n.X.Name().Defn = n
    		}
    		return n
    
    	case ir.OAS2:
    		tcAssignList(n.(*ir.AssignListStmt))
    		return n
    
    	case ir.OBREAK,
    		ir.OCONTINUE,
    		ir.ODCL,
    		ir.OGOTO,
    		ir.OFALL:
    		return n
    
    	case ir.OBLOCK:
    		n := n.(*ir.BlockStmt)
    		Stmts(n.List)
    		return n
    
    	case ir.OLABEL:
    		if n.Sym().IsBlank() {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 20 19:08:34 UTC 2024
    - 30.5K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ir/fmt.go

    	OAS2:        -1,
    	OAS2DOTTYPE: -1,
    	OAS2FUNC:    -1,
    	OAS2MAPR:    -1,
    	OAS2RECV:    -1,
    	OASOP:       -1,
    	OBLOCK:      -1,
    	OBREAK:      -1,
    	OCASE:       -1,
    	OCONTINUE:   -1,
    	ODCL:        -1,
    	ODEFER:      -1,
    	OFALL:       -1,
    	OFOR:        -1,
    	OGOTO:       -1,
    	OIF:         -1,
    	OLABEL:      -1,
    	OGO:         -1,
    	ORANGE:      -1,
    	ORETURN:     -1,
    	OSELECT:     -1,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 05 15:20:28 UTC 2023
    - 26K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/staticinit/sched.go

    	if len(list) == 3 && list[0].Op() == ir.ODCL {
    		dcl = list[0].(*ir.Decl)
    		list = list[1:]
    	}
    	if len(list) != 2 ||
    		list[0].Op() != ir.OAS2 ||
    		list[1].Op() != ir.OGOTO ||
    		list[1].(*ir.BranchStmt).Label != label {
    		return false
    	}
    	as2body := list[0].(*ir.AssignListStmt)
    	if dcl == nil {
    		ainit := as2body.Init()
    		if len(ainit) != 1 || ainit[0].Op() != ir.ODCL {
    			return false
    		}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 02 17:16:14 UTC 2024
    - 30.7K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/typecheck/stmt.go

    			arg := *argp
    
    			pos := callPos
    			if ir.HasUniquePos(arg) {
    				pos = arg.Pos()
    			}
    
    			// tmp := arg
    			tmp := TempAt(pos, ir.CurFunc, arg.Type())
    			init.Append(Stmt(ir.NewDecl(pos, ir.ODCL, tmp)))
    			tmp.Defn = as
    			as.Lhs[i] = tmp
    			as.Rhs[i] = arg
    
    			// Rewrite original expression to use/capture tmp.
    			*argp = ir.NewClosureVar(pos, wrapperFn, tmp)
    		}
    		init.Append(Stmt(as))
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Nov 20 15:10:54 UTC 2023
    - 17.8K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/walk/switch.go

    				} else {
    					base.Fatalf("unhandled type switch case %v", ncase.List[0])
    				}
    				val.SetType(caseVar.Type())
    				val.SetTypecheck(1)
    			}
    			l := []ir.Node{
    				ir.NewDecl(ncase.Pos(), ir.ODCL, caseVar),
    				ir.NewAssignStmt(ncase.Pos(), caseVar, val),
    			}
    			typecheck.Stmts(l)
    			sw.Compiled.Append(l...)
    		}
    		sw.Compiled.Append(ncase.Body...)
    		sw.Compiled.Append(br)
    	}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 04 17:34:01 UTC 2024
    - 30.1K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssagen/ssa.go

    		v1 := s.newValue1(ssa.OpSelect0, n.Lhs[0].Type(), v)
    		v2 := s.newValue1(ssa.OpSelect1, n.Lhs[1].Type(), v)
    		s.assign(n.Lhs[0], v1, false, 0)
    		s.assign(n.Lhs[1], v2, false, 0)
    		return
    
    	case ir.ODCL:
    		n := n.(*ir.Decl)
    		if v := n.X; v.Esc() == ir.EscHeap {
    			s.newHeapaddr(v)
    		}
    
    	case ir.OLABEL:
    		n := n.(*ir.LabelStmt)
    		sym := n.Label
    		if sym.IsBlank() {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Jun 10 19:44:43 UTC 2024
    - 284.9K bytes
    - Viewed (0)
Back to top