tgo: Eliminate most debug prints
Этот коммит содержится в:
родитель
315e39b164
коммит
d1dbca53ff
1 изменённых файлов: 0 добавлений и 13 удалений
13
tgo.go
13
tgo.go
|
@ -139,7 +139,6 @@ func (c *Compiler) Parse(mainPath string, buildTags []string) error {
|
||||||
|
|
||||||
// TODO: pick the error of the first package, not a random package
|
// TODO: pick the error of the first package, not a random package
|
||||||
for _, pkgInfo := range lprogram.AllPackages {
|
for _, pkgInfo := range lprogram.AllPackages {
|
||||||
fmt.Println("package:", pkgInfo.Pkg.Path())
|
|
||||||
if len(pkgInfo.Errors) != 0 {
|
if len(pkgInfo.Errors) != 0 {
|
||||||
return pkgInfo.Errors[0]
|
return pkgInfo.Errors[0]
|
||||||
}
|
}
|
||||||
|
@ -221,7 +220,6 @@ func (c *Compiler) Parse(mainPath string, buildTags []string) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Compiler) getLLVMType(goType types.Type) (llvm.Type, error) {
|
func (c *Compiler) getLLVMType(goType types.Type) (llvm.Type, error) {
|
||||||
fmt.Println(" type:", goType)
|
|
||||||
switch typ := goType.(type) {
|
switch typ := goType.(type) {
|
||||||
case *types.Array:
|
case *types.Array:
|
||||||
elemType, err := c.getLLVMType(typ.Elem())
|
elemType, err := c.getLLVMType(typ.Elem())
|
||||||
|
@ -359,8 +357,6 @@ func getGlobalName(global *ssa.Global) string {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Compiler) parsePackage(program *ssa.Program, pkg *ssa.Package) error {
|
func (c *Compiler) parsePackage(program *ssa.Program, pkg *ssa.Package) error {
|
||||||
fmt.Println("\npackage:", pkg.Pkg.Path())
|
|
||||||
|
|
||||||
// Make sure we're walking through all members in a constant order every
|
// Make sure we're walking through all members in a constant order every
|
||||||
// run.
|
// run.
|
||||||
memberNames := make([]string, 0)
|
memberNames := make([]string, 0)
|
||||||
|
@ -455,8 +451,6 @@ func (c *Compiler) parsePackage(program *ssa.Program, pkg *ssa.Package) error {
|
||||||
// Now, add definitions to those declarations.
|
// Now, add definitions to those declarations.
|
||||||
for _, name := range memberNames {
|
for _, name := range memberNames {
|
||||||
member := pkg.Members[name]
|
member := pkg.Members[name]
|
||||||
fmt.Println("member:", member.Token(), member)
|
|
||||||
|
|
||||||
switch member := member.(type) {
|
switch member := member.(type) {
|
||||||
case *ssa.Function:
|
case *ssa.Function:
|
||||||
if strings.HasPrefix(name, "_Cfunc_") {
|
if strings.HasPrefix(name, "_Cfunc_") {
|
||||||
|
@ -641,7 +635,6 @@ func (c *Compiler) parseFunc(frame *Frame, f *ssa.Function) error {
|
||||||
for _, block := range f.DomPreorder() {
|
for _, block := range f.DomPreorder() {
|
||||||
c.builder.SetInsertPointAtEnd(frame.blocks[block])
|
c.builder.SetInsertPointAtEnd(frame.blocks[block])
|
||||||
for _, instr := range block.Instrs {
|
for _, instr := range block.Instrs {
|
||||||
fmt.Printf(" instr: %v\n", instr)
|
|
||||||
err := c.parseInstr(frame, instr)
|
err := c.parseInstr(frame, instr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
@ -733,15 +726,12 @@ func (c *Compiler) parseInstr(frame *Frame, instr ssa.Instruction) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Compiler) parseBuiltin(frame *Frame, args []ssa.Value, callName string) (llvm.Value, error) {
|
func (c *Compiler) parseBuiltin(frame *Frame, args []ssa.Value, callName string) (llvm.Value, error) {
|
||||||
fmt.Printf(" builtin: %v\n", callName)
|
|
||||||
|
|
||||||
switch callName {
|
switch callName {
|
||||||
case "print", "println":
|
case "print", "println":
|
||||||
for i, arg := range args {
|
for i, arg := range args {
|
||||||
if i >= 1 {
|
if i >= 1 {
|
||||||
c.builder.CreateCall(c.mod.NamedFunction("runtime.printspace"), nil, "")
|
c.builder.CreateCall(c.mod.NamedFunction("runtime.printspace"), nil, "")
|
||||||
}
|
}
|
||||||
fmt.Printf(" arg: %s\n", arg);
|
|
||||||
value, err := c.parseExpr(frame, arg)
|
value, err := c.parseExpr(frame, arg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return llvm.Value{}, err
|
return llvm.Value{}, err
|
||||||
|
@ -842,12 +832,9 @@ func (c *Compiler) parseCall(frame *Frame, instr *ssa.Call) (llvm.Value, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Compiler) parseExpr(frame *Frame, expr ssa.Value) (llvm.Value, error) {
|
func (c *Compiler) parseExpr(frame *Frame, expr ssa.Value) (llvm.Value, error) {
|
||||||
fmt.Printf(" expr: %v\n", expr)
|
|
||||||
|
|
||||||
if frame != nil {
|
if frame != nil {
|
||||||
if value, ok := frame.locals[expr]; ok {
|
if value, ok := frame.locals[expr]; ok {
|
||||||
// Value is a local variable that has already been computed.
|
// Value is a local variable that has already been computed.
|
||||||
fmt.Println(" from local var")
|
|
||||||
if value.IsNil() {
|
if value.IsNil() {
|
||||||
return llvm.Value{}, errors.New("undefined local var (from cgo?)")
|
return llvm.Value{}, errors.New("undefined local var (from cgo?)")
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Создание таблицы
Сослаться в новой задаче