• Aram Hăvărneanu's avatar
    [dev.cc] runtime: convert Solaris port to Go · e088e162
    Aram Hăvărneanu authored
    Memory management was consolitated with the BSD ports, since
    it was almost identical.
    
    Assembly thunks are gone, being replaced by the new //go:linkname
    feature.
    
    This change supersedes CL 138390043 (runtime: convert solaris
    netpoll to Go), which was previously reviewed and tested.
    
    This change is only the first step, the port now builds,
    but doesn't run. Binaries fail to exec:
    
        ld.so.1: 6.out: fatal: 6.out: TLS requirement failure : TLS support is unavailable
        Killed
    
    This seems to happen because binaries don't link with libc.so
    anymore. We will have to solve that in a different CL.
    
    Also this change is just a rough translation of the original
    C code, cleanup will come in a different CL.
    
    [This CL is part of the removal of C code from package runtime.
    See golang.org/s/dev.cc for an overview.]
    
    LGTM=rsc
    R=rsc, dave
    CC=golang-codereviews, iant, khr, minux, r, rlh
    https://golang.org/cl/174960043
    e088e162
syscall2_solaris.go 1.89 KB