diff options
| author | David Chase <drchase@google.com> | 2016-08-15 13:51:00 -0700 |
|---|---|---|
| committer | David Chase <drchase@google.com> | 2016-08-18 16:34:47 +0000 |
| commit | 5b9ff11c3d50368c44ae7aa9cb4b58c67494e7bb (patch) | |
| tree | 834926c02f7fbf20922f5b61036f883839bdc217 /src/cmd/internal | |
| parent | dea6dab40c589b486ee6643db3e1204c3379aaee (diff) | |
| download | go-5b9ff11c3d50368c44ae7aa9cb4b58c67494e7bb.tar.xz | |
cmd/compile: ppc64le working, not optimized enough
This time with the cherry-pick from the proper patch of
the old CL.
Stack size increased.
Corrected NaN-comparison glitches.
Marked g register as clobbered by calls.
Fixed shared libraries.
live_ssa.go still disabled because of differences.
Presumably turning on more optimization will fix
both the stack size and the live_ssa.go glitches.
Enhanced debugging output for shared libs test.
Rebased onto master.
Updates #16010.
Change-Id: I40864faf1ef32c118fb141b7ef8e854498e6b2c4
Reviewed-on: https://go-review.googlesource.com/27159
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Diffstat (limited to 'src/cmd/internal')
| -rw-r--r-- | src/cmd/internal/obj/ppc64/a.out.go | 10 | ||||
| -rw-r--r-- | src/cmd/internal/obj/ppc64/asm9.go | 4 | ||||
| -rw-r--r-- | src/cmd/internal/obj/stack.go | 2 |
3 files changed, 8 insertions, 8 deletions
diff --git a/src/cmd/internal/obj/ppc64/a.out.go b/src/cmd/internal/obj/ppc64/a.out.go index eb0baaf6df..e79271042a 100644 --- a/src/cmd/internal/obj/ppc64/a.out.go +++ b/src/cmd/internal/obj/ppc64/a.out.go @@ -266,13 +266,13 @@ const ( ABC ABCL ABEQ - ABGE + ABGE // not LT = G/E/U ABGT - ABLE + ABLE // not GT = L/E/U ABLT - ABNE - ABVC - ABVS + ABNE // not EQ = L/G/U + ABVC // apparently Unordered-clear + ABVS // apparently Unordered-set ACMP ACMPU ACNTLZW diff --git a/src/cmd/internal/obj/ppc64/asm9.go b/src/cmd/internal/obj/ppc64/asm9.go index 968bc95e10..18a34e410a 100644 --- a/src/cmd/internal/obj/ppc64/asm9.go +++ b/src/cmd/internal/obj/ppc64/asm9.go @@ -3092,9 +3092,9 @@ func opirr(ctxt *obj.Link, a obj.As) uint32 { case ABNE: return AOP_RRR(16<<26, 4, 2, 0) case ABVC: - return AOP_RRR(16<<26, 4, 3, 0) + return AOP_RRR(16<<26, 4, 3, 0) // apparently unordered-clear case ABVS: - return AOP_RRR(16<<26, 12, 3, 0) + return AOP_RRR(16<<26, 12, 3, 0) // apparently unordered-set case ACMP: return OPVCC(11, 0, 0, 0) | 1<<21 /* L=1 */ diff --git a/src/cmd/internal/obj/stack.go b/src/cmd/internal/obj/stack.go index 712a10f2ef..687adf20f3 100644 --- a/src/cmd/internal/obj/stack.go +++ b/src/cmd/internal/obj/stack.go @@ -11,7 +11,7 @@ const ( STACKSYSTEM = 0 StackSystem = STACKSYSTEM StackBig = 4096 - StackGuard = 720*stackGuardMultiplier + StackSystem + StackGuard = 880*stackGuardMultiplier + StackSystem StackSmall = 128 StackLimit = StackGuard - StackSystem - StackSmall ) |
