Commit 17eba6e6 authored by Russ Cox's avatar Russ Cox

cmd/compile, cmd/link: create from 5g, 5l, etc

Trivial merging of 5g, 6g, ... into go tool compile,
and similarlly 5l, 6l, ... into go tool link.
The files compile/main.go and link/main.go are new.
Everything else in those directories is a move followed by
change of imports and package name.

This CL breaks the build. Manual fixups are in the next CL.

See golang-dev thread titled "go tool compile, etc" for background.

Change-Id: Id35ff5a5859ad9037c61275d637b1bd51df6828b
Reviewed-on: https://go-review.googlesource.com/10287Reviewed-by: default avatarDave Cheney <dave@cheney.net>
Reviewed-by: default avatarRob Pike <r@golang.org>
parent 2a141ded
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package amd64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
)
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package amd64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
)
......@@ -65,7 +65,7 @@ func betypeinit() {
}
}
func main() {
func Main() {
if obj.Getgoos() == "nacl" {
resvd = append(resvd, x86.REG_BP, x86.REG_R15)
} else if obj.Framepointer_enabled != 0 {
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package amd64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
)
......
......@@ -28,11 +28,11 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package amd64
import (
"cmd/internal/gc"
"cmd/internal/gc/big"
"cmd/compile/internal/big"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
"fmt"
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package amd64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
"fmt"
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package amd64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
)
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package amd64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
)
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package arm
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm"
)
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package arm
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm"
)
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package arm
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm"
)
......@@ -37,7 +37,7 @@ func betypeinit() {
gc.Widthreg = 4
}
func main() {
func Main() {
gc.Thearch.Thechar = thechar
gc.Thearch.Thestring = thestring
gc.Thearch.Thelinkarch = thelinkarch
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package arm
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm"
)
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm"
"fmt"
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm"
"fmt"
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package arm
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm"
)
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm
import "cmd/internal/obj/arm"
import "cmd/internal/gc"
import "cmd/compile/internal/gc"
const (
NREGVAR = 32
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package arm64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm64"
)
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package arm64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm64"
)
......@@ -37,7 +37,7 @@ func betypeinit() {
gc.Widthreg = 8
}
func main() {
func Main() {
gc.Thearch.Thechar = thechar
gc.Thearch.Thestring = thestring
gc.Thearch.Thelinkarch = thelinkarch
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package arm64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm64"
"fmt"
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm64"
"fmt"
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm64"
"fmt"
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package arm64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/arm64"
)
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj/arm64"
)
......
......@@ -5,7 +5,7 @@
package gc
import (
"cmd/internal/gc/big"
"cmd/compile/internal/big"
"cmd/internal/obj"
"strings"
)
......
......@@ -6,7 +6,7 @@ package gc
import (
"bytes"
"cmd/internal/gc/big"
"cmd/compile/internal/big"
"cmd/internal/obj"
)
......
......@@ -5,7 +5,7 @@
package gc
import (
"cmd/internal/gc/big"
"cmd/compile/internal/big"
"cmd/internal/obj"
"fmt"
)
......
......@@ -5,7 +5,7 @@
package gc
import (
"cmd/internal/gc/big"
"cmd/compile/internal/big"
"cmd/internal/obj"
"fmt"
"math"
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package ppc64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/ppc64"
)
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package ppc64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/ppc64"
)
......@@ -45,7 +45,7 @@ func betypeinit() {
gc.Widthreg = 8
}
func main() {
func Main() {
gc.Thearch.Thechar = thechar
gc.Thearch.Thestring = thestring
gc.Thearch.Thelinkarch = thelinkarch
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package ppc64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/ppc64"
"fmt"
......
......@@ -28,11 +28,11 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package ppc64
import (
"cmd/internal/gc"
"cmd/internal/gc/big"
"cmd/compile/internal/big"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/ppc64"
"fmt"
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package ppc64
// Many Power ISA arithmetic and logical instructions come in four
// standard variants. These bits let us map between variants.
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package ppc64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/ppc64"
"fmt"
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package ppc64
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/ppc64"
)
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package ppc64
import "cmd/internal/obj/ppc64"
import "cmd/internal/gc"
import "cmd/compile/internal/gc"
const (
NREGVAR = 64 /* 32 general + 32 floating */
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package x86
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
)
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package x86
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
)
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package x86
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
"fmt"
......@@ -39,7 +39,7 @@ func betypeinit() {
gc.Widthreg = 4
}
func main() {
func Main() {
gc.Thearch.Thechar = thechar
gc.Thearch.Thestring = thestring
gc.Thearch.Thelinkarch = thelinkarch
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package x86
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
)
......
......@@ -28,11 +28,11 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package x86
import (
"cmd/internal/gc"
"cmd/internal/gc/big"
"cmd/compile/internal/big"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
"fmt"
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package x86
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
"fmt"
......
......@@ -2,10 +2,10 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
package x86
import (
"cmd/internal/gc"
"cmd/compile/internal/gc"
"cmd/internal/obj"
"cmd/internal/obj/x86"
)
......
......@@ -28,10 +28,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package x86
import "cmd/internal/obj/x86"
import "cmd/internal/gc"
import "cmd/compile/internal/gc"
const (
NREGVAR = 16 /* 8 integer + 8 floating */
......
// Copyright 2015 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.
package main
import (
"cmd/compile/internal/amd64"
"cmd/compile/internal/arm"
"cmd/compile/internal/arm64"
"cmd/compile/internal/ppc64"
"cmd/compile/internal/x86"
"cmd/internal/obj"
"fmt"
"os"
)
func main() {
switch obj.Getgoarch() {
default:
fmt.Fprintf(os.Stderr, "compile: unknown architecture %q\n", obj.Getgoarch())
os.Exit(2)
case "386":
x86.Main()
case "amd64", "amd64p32":
amd64.Main()
case "arm":
arm.Main()
case "arm64":
arm64.Main()
case "ppc64", "ppc64le":
ppc64.Main()
}
}
......@@ -28,11 +28,11 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package amd64
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"debug/elf"
"fmt"
"log"
......
......@@ -28,7 +28,7 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package amd64
const (
thechar = '6'
......
......@@ -28,18 +28,18 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package amd64
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"fmt"
"log"
)
// Reading object files.
func main() {
func Main() {
linkarchinit()
ld.Ldmain()
}
......
......@@ -28,11 +28,11 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"fmt"
"log"
)
......
......@@ -28,7 +28,7 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm
// Writing object files.
......
......@@ -28,18 +28,18 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"fmt"
"log"
)
// Reading object files.
func main() {
func Main() {
linkarchinit()
ld.Ldmain()
}
......
......@@ -28,11 +28,11 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm64
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"encoding/binary"
"fmt"
"log"
......
......@@ -28,7 +28,7 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm64
// Writing object files.
......
......@@ -28,18 +28,18 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package arm64
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"fmt"
"log"
)
// Reading object files.
func main() {
func Main() {
linkarchinit()
ld.Ldmain()
}
......
......@@ -28,11 +28,11 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package ppc64
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"encoding/binary"
"fmt"
"log"
......
......@@ -28,7 +28,7 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package ppc64
// Writing object files.
......
......@@ -28,18 +28,18 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package ppc64
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"fmt"
"log"
)
// Reading object files.
func main() {
func Main() {
linkarchinit()
ld.Ldmain()
}
......
......@@ -28,11 +28,11 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package x86
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"fmt"
"log"
)
......
......@@ -28,7 +28,7 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package x86
const (
thechar = '8'
......
......@@ -28,18 +28,18 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
package main
package x86
import (
"cmd/internal/ld"
"cmd/internal/obj"
"cmd/link/internal/ld"
"fmt"
"log"
)
// Reading object files.
func main() {
func Main() {
linkarchinit()
ld.Ldmain()
}
......
// Copyright 2015 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.
package main
import (
"cmd/internal/obj"
"cmd/link/internal/amd64"
"cmd/link/internal/arm"
"cmd/link/internal/arm64"
"cmd/link/internal/ppc64"
"cmd/link/internal/x86"
"fmt"
"os"
)
func main() {
switch obj.Getgoarch() {
default:
fmt.Fprintf(os.Stderr, "link: unknown architecture %q\n", obj.Getgoarch())
os.Exit(2)
case "386":
x86.Main()
case "amd64", "amd64p32":
amd64.Main()
case "arm":
arm.Main()
case "arm64":
arm64.Main()
case "ppc64", "ppc64le":
ppc64.Main()
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment