diff options
| author | David Chase <drchase@google.com> | 2016-09-16 15:02:47 -0700 |
|---|---|---|
| committer | David Chase <drchase@google.com> | 2016-09-22 17:36:39 +0000 |
| commit | cddddbc6231177c87b72f95209ab51abb74bcbc5 (patch) | |
| tree | 0c232cc31b58405878f29d9ec8aac96d712a08ae /src/cmd/internal/obj/ppc64 | |
| parent | dcbbd319e9cdd44d50314818ec05672b60e8f8e7 (diff) | |
| download | go-cddddbc6231177c87b72f95209ab51abb74bcbc5.tar.xz | |
cmd/compile: use ISEL, cleanup use of zero & extensions
Abandoned earlier efforts to expose zero register,
but left it in numbering to decrease squirrelyness of
register allocator.
ISELrelOp used in code generation of bool := x relOp y.
Some patterns added to better elide zero case and
some sign extension.
Updates: #17109
Change-Id: Ida7839f0023ca8f0ffddc0545f0ac269e65b05d9
Reviewed-on: https://go-review.googlesource.com/29380
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Diffstat (limited to 'src/cmd/internal/obj/ppc64')
| -rw-r--r-- | src/cmd/internal/obj/ppc64/a.out.go | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/cmd/internal/obj/ppc64/a.out.go b/src/cmd/internal/obj/ppc64/a.out.go index 468d8f8c76..1b92a669c8 100644 --- a/src/cmd/internal/obj/ppc64/a.out.go +++ b/src/cmd/internal/obj/ppc64/a.out.go @@ -219,7 +219,7 @@ const ( C_COND_LT = iota // 0 result is negative C_COND_GT // 1 result is positive C_COND_EQ // 2 result is zero - C_COND_SO // 3 summary overflow + C_COND_SO // 3 summary overflow or FP compare w/ NaN ) const ( @@ -300,8 +300,8 @@ const ( ABLE // not GT = L/E/U ABLT ABNE // not EQ = L/G/U - ABVC // apparently Unordered-clear - ABVS // apparently Unordered-set + ABVC // Unordered-clear + ABVS // Unordered-set ACMP ACMPU ACNTLZW |
