aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/sparc
diff options
context:
space:
mode:
authorJohn Carr <jfc@mit.edu>1998-08-11 00:03:39 +0000
committerDavid S. Miller <davem@gcc.gnu.org>1998-08-10 17:03:39 -0700
commitcb6420a0bb247b104068bef4fcc8ca4b65c2d8dc (patch)
treeb4d6da1901e589dcadc948d6c521040ea3d51eac /gcc/config/sparc
parent03ad6f4d34a4fc496c2bf886444a3a2862deddfa (diff)
downloadgcc-cb6420a0bb247b104068bef4fcc8ca4b65c2d8dc.zip
gcc-cb6420a0bb247b104068bef4fcc8ca4b65c2d8dc.tar.gz
gcc-cb6420a0bb247b104068bef4fcc8ca4b65c2d8dc.tar.bz2
sparc.md (define_insn jump): Output ba,pt not b,pt in v9 case as the latter makes the Solaris assembler crash.
* config/sparc/sparc.md (define_insn jump): Output ba,pt not b,pt in v9 case as the latter makes the Solaris assembler crash. From-SVN: r21659
Diffstat (limited to 'gcc/config/sparc')
-rw-r--r--gcc/config/sparc/sparc.md8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
index e054d25..9fc5db6 100644
--- a/gcc/config/sparc/sparc.md
+++ b/gcc/config/sparc/sparc.md
@@ -6545,19 +6545,19 @@ movtf_is_ok:
""
"*
{
- /* Some implementations (e.g. TurboSparc) are reported to have problems
+ /* TurboSparc is reported to have problems with
with
foo: b,a foo
i.e. an empty loop with the annul bit set. The workaround is to use
foo: b foo; nop
instead. */
- if (flag_delayed_branch
+ if (! TARGET_V9 && flag_delayed_branch
&& (insn_addresses[INSN_UID (operands[0])]
== insn_addresses[INSN_UID (insn)]))
- return TARGET_V9 ? \"b,pt\\t%%xcc, %l0%#\" : \"b\\t%l0%#\";
+ return \"b\\t%l0%#\";
else
- return TARGET_V9 ? \"b,pt%*\\t%%xcc, %l0%(\" : \"b%*\\t%l0%(\";
+ return TARGET_V9 ? \"ba,pt%*\\t%%xcc, %l0%(\" : \"b%*\\t%l0%(\";
}"
[(set_attr "type" "uncond_branch")])