import (
"bufio"
"cmd/compile/internal/base"
- "cmd/compile/internal/reflectdata"
"cmd/compile/internal/ssagen"
"cmd/compile/internal/typecheck"
"cmd/compile/internal/types"
base.Ctxt.Bso = bufio.NewWriter(os.Stdout)
types.PtrSize = ssagen.Arch.LinkArch.PtrSize
types.RegSize = ssagen.Arch.LinkArch.RegSize
- types.TypeLinkSym = func(t *types.Type) *obj.LSym {
- return reflectdata.TypeLinksym(t)
- }
- types.TypeLinkSym = func(t *types.Type) *obj.LSym {
- return reflectdata.TypeLinksym(t)
- }
typecheck.Init()
os.Exit(m.Run())
}
types.PtrSize = ssagen.Arch.LinkArch.PtrSize
types.RegSize = ssagen.Arch.LinkArch.RegSize
types.MaxWidth = ssagen.Arch.MAXWIDTH
- types.TypeLinkSym = func(t *types.Type) *obj.LSym {
- return reflectdata.TypeLinksym(t)
- }
typecheck.Target = new(ir.Package)
base.AutogeneratedPos = makePos(src.NewFileBase("<autogenerated>", "<autogenerated>"), 1, 0)
- types.TypeLinkSym = func(t *types.Type) *obj.LSym {
- return reflectdata.TypeLinksym(t)
- }
typecheck.Init()
// Parse input.
package ssa
import (
+ "cmd/compile/internal/reflectdata"
"cmd/compile/internal/types"
"cmd/internal/obj"
"cmd/internal/objabi"
case OpMoveWB:
fn = typedmemmove
val = w.Args[1]
- typ = w.Aux.(*types.Type).Symbol()
+ typ = reflectdata.TypeLinksym(w.Aux.(*types.Type))
nWBops--
case OpZeroWB:
fn = typedmemclr
- typ = w.Aux.(*types.Type).Symbol()
+ typ = reflectdata.TypeLinksym(w.Aux.(*types.Type))
nWBops--
case OpVarDef, OpVarLive, OpVarKill:
}
import (
"cmd/compile/internal/base"
- "cmd/internal/obj"
"cmd/internal/src"
"fmt"
"sync"
return true
}
-func (t *Type) Symbol() *obj.LSym {
- return TypeLinkSym(t)
-}
-
// Tie returns 'T' if t is a concrete type,
// 'I' if t is an interface type, and 'E' if t is an empty interface type.
// It is used to build calls to the conv* and assert* runtime routines.
package types
-import (
- "cmd/internal/obj"
-)
-
const BADWIDTH = -1000000000
-// The following variables must be initialized early by the frontend.
-// They are here to break import cycles.
-// TODO(gri) eliminate these dependencies.
-var (
- TypeLinkSym func(*Type) *obj.LSym
-)
-
type bitset8 uint8
func (f *bitset8) set(mask uint8, b bool) {