OSDN Git Service

Fix Bug savannah/1825:
authorStephane Carrez <stcarrez@nerim.fr>
Sun, 1 Dec 2002 11:02:10 +0000 (11:02 +0000)
committerStephane Carrez <stcarrez@nerim.fr>
Sun, 1 Dec 2002 11:02:10 +0000 (11:02 +0000)
commit895d65875ec6813208ddaa7edc72b413176f83a0
tree56ff2b538cb02f4c3b19e6651bcf9467485611d2
parent7896e751a04074e543387dc2ece970fa592be906
Fix Bug savannah/1825:
* config/tc-m68hc11.h (md_relax_frag): Define to support relaxations
that are not pc-relative.
(m68hc11_relax_frag): Declare.

* config/tc-m68hc11.c (build_indexed_byte): Use a frag_var to handle
the offsetable indexed addressing modes (n,r).
(build_insn): Cleanup some locals.
(m68hc11_relax_frag): New function imported from tc-cris.c to handle
relaxation of difference between two symbols of same section.
(md_convert_frag): For INDEXED_OFFSET relaxs, use the displacement
only when this is a PC-relative operand and the offset is not absolute.
(md_estimate_size_before_relax): Convert the INDEXED_OFFSET,UNDEF frag
to INDEXED_OFFSET,STATE_BITS5 when the symbol is absolute; this will
be handled by m68hc11_relax_frag.
gas/ChangeLog
gas/config/tc-m68hc11.c
gas/config/tc-m68hc11.h