re PR target/5626 (gcc-3.1 on sparcv9 does not generate code for long jumps)
authorJakub Jelinek <jakub@redhat.com>
Wed, 13 Mar 2002 19:48:29 +0000 (20:48 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Wed, 13 Mar 2002 19:48:29 +0000 (20:48 +0100)
commit0b82d204c4533d773c8a38094cf82c7a04f17a61
treeca5b4670920d0459a567dfef299745cad91e024c
parent56668fb05b1b64db231909ad195e1d74aad12f9e
re PR target/5626 (gcc-3.1 on sparcv9 does not generate code for long jumps)

PR target/5626
* config/sparc/sparc.md (normal_branch, inverted_branch,
normal_fp_branch, inverted_fp_branch, normal_fpe_branch,
inverted_fp_branch): Adjust calls to output_cbranch.
Set length attribute.
(normal_int_branch_sp64, inverted_int_branch_sp64): Adjust calls to
output_v9branch.  Set length attribute.
* config/sparc/sparc.c (fcc0_reg_operand, noov_compare64_op): New
predicates.
(noov_compare_op): Handle CCX_NOOVmode the same way as CC_NOOVmode.
(output_cbranch): Likewise.  Handle far branches.
(output_v9branch): Handle far branches.
* config/sparc/sparc-protos.h (output_cbranch, output_v9branch):
Adjust prototypes.
* config/sparc/sparc.h (PREDICATE_CODES): Add fcc0_reg_operand and
noov_compare64_op predicates.

From-SVN: r50753
gcc/ChangeLog
gcc/config/sparc/sparc-protos.h
gcc/config/sparc/sparc.c
gcc/config/sparc/sparc.h
gcc/config/sparc/sparc.md