From: John Carr Date: Tue, 11 Aug 1998 00:03:39 +0000 (+0000) Subject: sparc.md (define_insn jump): Output ba,pt not b,pt in v9 case as the latter makes... X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=cb6420a0bb247b104068bef4fcc8ca4b65c2d8dc;p=platform%2Fupstream%2Fgcc.git 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 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ee408a4..20e837b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Mon Aug 10 22:57:24 1998 John Carr + + * config/sparc/sparc.md (define_insn jump): Output ba,pt not b,pt + in v9 case as the latter makes the Solaris assembler crash. + Mon Aug 10 22:39:09 1998 David S. Miller * config/sparc/sparc.c (input_operand): Do not accept a LO_SUM MEM 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")])