diff options
author | Alan Modra <amodra@gmail.com> | 2001-03-30 00:06:10 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2001-03-30 00:06:10 +0000 |
commit | 93c2a809afebb143e36fc1e666c5de746e76d741 (patch) | |
tree | bcf004bb8591de6c9677974ce8a0a57cd283fd65 /gas/config/tc-mn10200.c | |
parent | 23ec5d03124e6105a19f9d6d7d1410f0de589f50 (diff) | |
download | gdb-93c2a809afebb143e36fc1e666c5de746e76d741.zip gdb-93c2a809afebb143e36fc1e666c5de746e76d741.tar.gz gdb-93c2a809afebb143e36fc1e666c5de746e76d741.tar.bz2 |
Prepare for multi-pass relaxation.
Diffstat (limited to 'gas/config/tc-mn10200.c')
-rw-r--r-- | gas/config/tc-mn10200.c | 39 |
1 files changed, 15 insertions, 24 deletions
diff --git a/gas/config/tc-mn10200.c b/gas/config/tc-mn10200.c index 7854508..dd3f9e5 100644 --- a/gas/config/tc-mn10200.c +++ b/gas/config/tc-mn10200.c @@ -1,5 +1,6 @@ /* tc-mn10200.c -- Assembler code for the Matsushita 10200 - Copyright 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc. + Copyright 1996, 1997, 1998, 1999, 2000, 2001 + Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -1284,29 +1285,19 @@ md_estimate_size_before_relax (fragp, seg) fragS *fragp; asection *seg; { - if (fragp->fr_subtype == 0) - return 2; - if (fragp->fr_subtype == 3) - return 3; - if (fragp->fr_subtype == 6) - { - if (!S_IS_DEFINED (fragp->fr_symbol) - || seg != S_GET_SEGMENT (fragp->fr_symbol)) - { - fragp->fr_subtype = 7; - return 5; - } - return 3; - } - if (fragp->fr_subtype == 8) - { - if (!S_IS_DEFINED (fragp->fr_symbol)) - { - fragp->fr_subtype = 10; - return 5; - } - return 2; - } + if (fragp->fr_subtype == 6 + && (!S_IS_DEFINED (fragp->fr_symbol) + || seg != S_GET_SEGMENT (fragp->fr_symbol))) + fragp->fr_subtype = 7; + else if (fragp->fr_subtype == 8 + && (!S_IS_DEFINED (fragp->fr_symbol) + || seg != S_GET_SEGMENT (fragp->fr_symbol))) + fragp->fr_subtype = 10; + + if (fragp->fr_subtype >= sizeof (md_relax_table) / sizeof (md_relax_table[0])) + abort (); + + return md_relax_table[fragp->fr_subtype].rlx_length; } long |