]> Cypherpunks repositories - gostls13.git/commitdiff
undo CL 6498092 / 4ff71bc1a199
authorAdam Langley <agl@golang.org>
Mon, 10 Sep 2012 19:52:36 +0000 (15:52 -0400)
committerAdam Langley <agl@golang.org>
Mon, 10 Sep 2012 19:52:36 +0000 (15:52 -0400)
Broke tests on 386.

««« original CL description
6l/8l: emit correct opcodes to F(SUB|DIV)R?D.

When the destination was not F0, 6l and 8l swapped FSUBD/FSUBRD and
FDIVD/FDIVRD.

R=golang-dev, dave, rsc
CC=golang-dev
https://golang.org/cl/6498092
»»»

R=golang-dev
CC=golang-dev
https://golang.org/cl/6492100

src/cmd/6l/optab.c
src/cmd/8l/optab.c
test/fixedbugs/bug453.dir/bug453.go [deleted file]
test/fixedbugs/bug453.dir/bug453.s [deleted file]
test/fixedbugs/bug453.dir/bug453_ref.go [deleted file]
test/fixedbugs/bug453.go [deleted file]

index fc9db0f92bccc68327b67b50c526199a8a72766c..0716fa4453fec5e72eb7944535df502ab53af242 100644 (file)
@@ -1199,25 +1199,25 @@ Optab optab[] =
        { AFSUBW,       yfmvx,  Px, 0xde,(04) },
        { AFSUBL,       yfmvx,  Px, 0xda,(04) },
        { AFSUBF,       yfmvx,  Px, 0xd8,(04) },
-       { AFSUBD,       yfadd,  Px, 0xdc,(04),0xd8,(04),0xdc,(04) },
+       { AFSUBD,       yfadd,  Px, 0xdc,(04),0xd8,(04),0xdc,(05) },
 
        { AFSUBRDP,     yfaddp, Px, 0xde,(04) },
        { AFSUBRW,      yfmvx,  Px, 0xde,(05) },
        { AFSUBRL,      yfmvx,  Px, 0xda,(05) },
        { AFSUBRF,      yfmvx,  Px, 0xd8,(05) },
-       { AFSUBRD,      yfadd,  Px, 0xdc,(05),0xd8,(05),0xdc,(05) },
+       { AFSUBRD,      yfadd,  Px, 0xdc,(05),0xd8,(05),0xdc,(04) },
 
        { AFDIVDP,      yfaddp, Px, 0xde,(07) },
        { AFDIVW,       yfmvx,  Px, 0xde,(06) },
        { AFDIVL,       yfmvx,  Px, 0xda,(06) },
        { AFDIVF,       yfmvx,  Px, 0xd8,(06) },
-       { AFDIVD,       yfadd,  Px, 0xdc,(06),0xd8,(06),0xdc,(06) },
+       { AFDIVD,       yfadd,  Px, 0xdc,(06),0xd8,(06),0xdc,(07) },
 
        { AFDIVRDP,     yfaddp, Px, 0xde,(06) },
        { AFDIVRW,      yfmvx,  Px, 0xde,(07) },
        { AFDIVRL,      yfmvx,  Px, 0xda,(07) },
        { AFDIVRF,      yfmvx,  Px, 0xd8,(07) },
-       { AFDIVRD,      yfadd,  Px, 0xdc,(07),0xd8,(07),0xdc,(07) },
+       { AFDIVRD,      yfadd,  Px, 0xdc,(07),0xd8,(07),0xdc,(06) },
 
        { AFXCHD,       yfxch,  Px, 0xd9,(01),0xd9,(01) },
        { AFFREE },
index a74b73ad2d3dbc93fa89043a82d29155dc7c4b61..7a588fca499089e2811874a1bd208dd986022a1a 100644 (file)
@@ -651,25 +651,25 @@ Optab optab[] =
        { AFSUBW,       yfmvx,  Px, 0xde,(04) },
        { AFSUBL,       yfmvx,  Px, 0xda,(04) },
        { AFSUBF,       yfmvx,  Px, 0xd8,(04) },
-       { AFSUBD,       yfadd,  Px, 0xdc,(04),0xd8,(04),0xdc,(04) },
+       { AFSUBD,       yfadd,  Px, 0xdc,(04),0xd8,(04),0xdc,(05) },
 
        { AFSUBRDP,     yfaddp, Px, 0xde,(04) },
        { AFSUBRW,      yfmvx,  Px, 0xde,(05) },
        { AFSUBRL,      yfmvx,  Px, 0xda,(05) },
        { AFSUBRF,      yfmvx,  Px, 0xd8,(05) },
-       { AFSUBRD,      yfadd,  Px, 0xdc,(05),0xd8,(05),0xdc,(05) },
+       { AFSUBRD,      yfadd,  Px, 0xdc,(05),0xd8,(05),0xdc,(04) },
 
        { AFDIVDP,      yfaddp, Px, 0xde,(07) },
        { AFDIVW,       yfmvx,  Px, 0xde,(06) },
        { AFDIVL,       yfmvx,  Px, 0xda,(06) },
        { AFDIVF,       yfmvx,  Px, 0xd8,(06) },
-       { AFDIVD,       yfadd,  Px, 0xdc,(06),0xd8,(06),0xdc,(06) },
+       { AFDIVD,       yfadd,  Px, 0xdc,(06),0xd8,(06),0xdc,(07) },
 
        { AFDIVRDP,     yfaddp, Px, 0xde,(06) },
        { AFDIVRW,      yfmvx,  Px, 0xde,(07) },
        { AFDIVRL,      yfmvx,  Px, 0xda,(07) },
        { AFDIVRF,      yfmvx,  Px, 0xd8,(07) },
-       { AFDIVRD,      yfadd,  Px, 0xdc,(07),0xd8,(07),0xdc,(07) },
+       { AFDIVRD,      yfadd,  Px, 0xdc,(07),0xd8,(07),0xdc,(06) },
 
        { AFXCHD,       yfxch,  Px, 0xd9,(01),0xd9,(01) },
        { AFFREE },
diff --git a/test/fixedbugs/bug453.dir/bug453.go b/test/fixedbugs/bug453.dir/bug453.go
deleted file mode 100644 (file)
index 04126b0..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2012 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 (
-       "strconv"
-)
-
-// These functions are implemented in bug453.s
-func bug453a() float64
-func bug453b() float64
-
-func main() {
-       if v := bug453a(); v != -1 {
-               panic("a: bad result, want -1, got " + strconv.FormatFloat(v, 'f', -1, 64))
-       }
-       if v := bug453b(); v != 1 {
-               panic("b: bad result, want 1, got " + strconv.FormatFloat(v, 'f', -1, 64))
-       }
-}
diff --git a/test/fixedbugs/bug453.dir/bug453.s b/test/fixedbugs/bug453.dir/bug453.s
deleted file mode 100644 (file)
index 9c0196d..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright 2012 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.
-
-// +build amd64 386
-
-// func bug453a() float64
-TEXT ·bug453a(SB),7,$0
-        FLD1
-        FLD1
-        FADDD F1,F0
-
-        // This should subtract F0 (2) from F1 (1) and put -1 in F1.
-        FSUBRD F0,F1
-
-        FMOVDP  F0,r+0(FP)
-        FMOVDP  F0,r+0(FP)
-        RET
-
-// func bug453b() float64
-TEXT ·bug453b(SB),7,$0
-        FLD1
-        FLD1
-        FADDD F1,F0
-
-        // This should subtract F1 (1) from F0 (2) and put 1 in F1.
-        FSUBD F0,F1
-
-        FMOVDP  F0,r+0(FP)
-        FMOVDP  F0,r+0(FP)
-        RET
diff --git a/test/fixedbugs/bug453.dir/bug453_ref.go b/test/fixedbugs/bug453.dir/bug453_ref.go
deleted file mode 100644 (file)
index f7a96d3..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-// Copyright 2012 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.
-
-// +build !amd64,!386
-
-package main
-
-// These functions are standins for the functions in the .s file on other platforms.
-func bug453a() float64 {
-       return -1
-}
-func bug453b() float64 {
-       return 1
-}
diff --git a/test/fixedbugs/bug453.go b/test/fixedbugs/bug453.go
deleted file mode 100644 (file)
index 6fed2c2..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-// compiledir
-
-// Copyright 2012 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.
-
-ignored