cmd/internal/obj/arm: remove CASE and BCASE

Update #10994

CASE and BCASE were used by 5c in switch statements, cmd/compile
does not use them.

Change-Id: I7a578c461b52b94690e35460926849b28971b770
Reviewed-on: https://go-review.googlesource.com/14009
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Minux Ma <minux@golang.org>
Run-TryBot: Minux Ma <minux@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
Dave Cheney 2015-08-31 10:14:00 +10:00
parent a088f1b76c
commit 8d478e845c
7 changed files with 22 additions and 114 deletions

View file

@ -156,17 +156,6 @@ const (
LEAF = 1 << 2
)
func linkcase(casep *obj.Prog) {
for p := casep; p != nil; p = p.Link {
if p.As == ABCASE {
for ; p != nil && p.As == ABCASE; p = p.Link {
p.Rel = casep
}
break
}
}
}
func preprocess(ctxt *obj.Link, cursym *obj.LSym) {
autosize := int32(0)
@ -196,11 +185,6 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym) {
var q *obj.Prog
for p := cursym.Text; p != nil; p = p.Link {
switch p.As {
case ACASE:
if ctxt.Flag_shared != 0 {
linkcase(p)
}
case obj.ATEXT:
p.Mark |= LEAF
@ -230,8 +214,7 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym) {
cursym.Text.Mark &^= LEAF
fallthrough
case ABCASE,
AB,
case AB,
ABEQ,
ABNE,
ABCS,
@ -914,7 +897,7 @@ loop:
if p.Pcond != nil {
if a != ABL && a != ABX && p.Link != nil {
q = obj.Brchain(ctxt, p.Link)
if a != obj.ATEXT && a != ABCASE {
if a != obj.ATEXT {
if q != nil && (q.Mark&FOLL != 0) {
p.As = int16(relinv(a))
p.Link = p.Pcond