This libgo patch by Clément Chigot adds -maix32 when running GCC on
32-bit AIX.  As gcc might now be compiled in 64bit, -maix32 must
always be added to ensure that created objects will be 32bit.
Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu.  Committed
to mainline.

Ian
0c223b02b6e4dfbdeac9f1dcd64ee9d1cd04a5a2
diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE
index 2f0865b7c80..780588aabc5 100644
--- a/gcc/go/gofrontend/MERGE
+++ b/gcc/go/gofrontend/MERGE
@@ -1,4 +1,4 @@
-aac2b382839154d74eeef160522c0a5c1ea8aadf
+9aed2d2c5e9c69aa530bf09d72d33c66e497d720
 
 The first line of this file holds the git revision number of the last
 merge done from the gofrontend repository.
diff --git a/libgo/go/cmd/cgo/gcc.go b/libgo/go/cmd/cgo/gcc.go
index 249cfe4675d..f774cbb9353 100644
--- a/libgo/go/cmd/cgo/gcc.go
+++ b/libgo/go/cmd/cgo/gcc.go
@@ -1573,6 +1573,10 @@ func (p *Package) gccMachine() []string {
                if goos == "aix" {
                        return []string{"-maix64"}
                }
+       case "ppc":
+               if goos == "aix" {
+                       return []string{"-maix32"}
+               }
        }
        return nil
 }
@@ -1615,7 +1619,6 @@ func (p *Package) gccCmd() []string {
        c = append(c, p.GccOptions...)
        c = append(c, p.gccMachine()...)
        if goos == "aix" {
-               c = append(c, "-maix64")
                c = append(c, "-mcmodel=large")
        }
        c = append(c, "-") //read input from standard input
diff --git a/libgo/go/cmd/go/internal/work/exec.go 
b/libgo/go/cmd/go/internal/work/exec.go
index d610410a72c..65f3011adfa 100644
--- a/libgo/go/cmd/go/internal/work/exec.go
+++ b/libgo/go/cmd/go/internal/work/exec.go
@@ -2503,6 +2503,10 @@ func (b *Builder) gccArchArgs() []string {
                if cfg.Goos == "aix" {
                        return []string{"-maix64"}
                }
+       case "ppc":
+               if cfg.Goos == "aix" {
+                       return []string{"-maix32"}
+               }
        }
        return nil
 }

Reply via email to