Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmd/compile: internal compiler error: append not lowered when building kubernetes on ppc64le tip #15988

Closed
laboger opened this issue Jun 7, 2016 · 3 comments
Milestone

Comments

@laboger
Copy link
Contributor

laboger commented Jun 7, 2016

Please answer these questions before submitting your issue. Thanks!

  1. What version of Go are you using (go version)?
    go version devel +2f08888 Tue Jun 7 06:04:23 2016 +0000 linux/ppc64le
    Does not happen on go1.6
  2. What operating system and processor architecture are you using (go env)?
    ppc64le Ubuntu 16.04
  3. What did you do?
    If possible, provide a recipe for reproducing the error.
    A complete runnable program is good.
    A link on play.golang.org is best.
    Built golang on ppc64le from latest master, used it to build latest from kubernetes with a few minor modifications to golang.sh.

git clone https://github.com/kubernetes/kubernetes.git
cd kubernetes
Apply this patch
kub.txt

make

  1. What did you expect to see?
    There are linker errors that occur on ppc64le which I am trying to debug, but this error is hit first.
  2. What did you see instead?
/home/boger/golang/upstream/go/pkg/tool/linux_ppc64le/compile -o $WORK/k8s.io/kubernetes/test/integration/framework.a -trimpath $WORK -p k8s.io/kubernetes/test/integration/framework -complete -buildid 55d44bb75e77b40e73e639b0ab0f1a4588e7ff96 -importmap github.com/coreos/etcd/client=k8s.io/kubernetes/vendor/github.com/coreos/etcd/client -importmap github.com/golang/glog=k8s.io/kubernetes/vendor/github.com/golang/glog -importmap golang.org/x/net/context=k8s.io/kubernetes/vendor/golang.org/x/net/context -D _/home/boger/kubnew/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/integration/framework -I $WORK -I /home/boger/kubnew/kubernetes/_output/local/go/pkg/linux_ppc64le -pack ./etcd_utils.go ./master_utils.go ./serializer.go                  
//# k8s.io/kubernetes/test/e2e/framework                                                                      
cgen_append-n [0xc42bbab050]                                                                                
.   APPEND l(6491) tc(1) SLICE-[]*extensions.ReplicaSet                                                     
.   APPEND-list                                                                                             
.   .   IND u(2) l(6491) tc(1) SLICE-[]*extensions.ReplicaSet                                               
.   .   .   NAME-framework.&oldRSs u(1) a(true) l(6472) x(0+0) class(PAUTO) tc(1) assigned used(true) PTR64-*[]*extensions.ReplicaSet                                                                                   

.   .   NAME-framework.autotmp_7249 u(1) a(true) l(6491) x(0+0) class(PAUTO) esc(N) tc(1) assigned used(true) PTR64-*extensions.ReplicaSet                                                                              
cgen_append-res [0xc43173be60]                                                                              
.   IND u(2) l(6491) tc(1) SLICE-[]*extensions.ReplicaSet                                                   
.   .   NAME-framework.&allRSs u(1) a(true) l(6472) x(0+0) class(PAUTO) tc(1) assigned used(true) PTR64-*[]*extensions.ReplicaSet                                                                                       
test/e2e/framework/util.go:2858: internal compiler error: append not lowered                                
goroutine 1 [running]:
runtime/debug.Stack(0x0, 0x0, 0x0)
        /home/boger/golang/upstream/go/src/runtime/debug/stack.go:24 +0x7c
cmd/compile/internal/gc.Fatalf(0x65c616, 0x12, 0x0, 0x0, 0x0)             
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/subr.go:165 +0x270
cmd/compile/internal/gc.cgen_append(0xc42bbab050, 0xc43173be60)                      
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/cgen.go:2861 +0x17c
cmd/compile/internal/gc.cgen_wb(0xc42bbab050, 0xc43173be60, 0x0)                      
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/cgen.go:65 +0x1e0  
cmd/compile/internal/gc.Cgen_as_wb(0xc43173be60, 0xc42bbab050, 0x1900)                
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/gen.go:1015 +0x1a0 
cmd/compile/internal/gc.Cgen_as(0xc43173be60, 0xc42bbab050)                           
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/gen.go:971 +0x3c   
cmd/compile/internal/gc.gen(0xc42bbab0e0)                                             
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/gen.go:918 +0x220  
cmd/compile/internal/gc.Genlist(0xc43171ad00)                                         
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/gen.go:303 +0x8c   
cmd/compile/internal/gc.genlegacy(0xc420150278, 0xc43173c7e0, 0xc43173c850)           
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/pgen.go:498 +0x84  
cmd/compile/internal/gc.compile(0xc42b3ce900)                                         
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/pgen.go:485 +0x1268
cmd/compile/internal/gc.funccompile(0xc42b3ce900)                                     
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/dcl.go:1287 +0x1a8 
cmd/compile/internal/gc.Main()                                                        
        /home/boger/golang/upstream/go/src/cmd/compile/internal/gc/main.go:467 +0x2370
cmd/compile/internal/ppc64.Main()                                                     
        /home/boger/golang/upstream/go/src/cmd/compile/internal/ppc64/galign.go:72 +0x348
main.main()                                                                              
        /home/boger/golang/upstream/go/src/cmd/compile/main.go:41 +0x4e8                 

This error does not occur on x86.

@ianlancetaylor ianlancetaylor added this to the Go1.7 milestone Jun 7, 2016
@ianlancetaylor
Copy link
Contributor

CC @randall77 @josharian

@randall77
Copy link
Contributor

Repro:

package main

func f(p, q []int) {
    p = append(q, 5)
    sink = &p
}
var sink *[]int

Fails when compiling with -ssa=0 (on any architecture).

@randall77 randall77 self-assigned this Jun 7, 2016
@gopherbot
Copy link

CL https://golang.org/cl/23863 mentions this issue.

@golang golang locked and limited conversation to collaborators Jun 8, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants