Alan Modra
ae6063d440
* symbols.c (S_FORCE_RELOC): Add "strict" param.
...
* symbols.h (S_FORCE_RELOC): Likewise.
* config/obj-aout.h (S_FORCE_RELOC): Likewise.
* config/obj-bout.h (S_FORCE_RELOC): Likewise.
* config/obj-coff.h (S_FORCE_RELOC): Likewise.
* config/obj-ieee.h (S_FORCE_RELOC): Likewise.
* config/obj-vms.h (S_FORCE_RELOC): Likewise.
* write.c (generic_force_reloc): New function.
(TC_FORCE_RELOCATION): Use it here instead of S_FORCE_RELOC.
(TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
(adjust_reloc_syms): Adjust S_FORCE_RELOC call.
* as.h (generic_force_reloc): Declare.
* doc/internals.texi (S_FORCE_RELOC): Update.
(TC_FORCE_RELOCATION_SUB_SAME): Update.
* config/tc-alpha.c (alpha_force_relocation): Adjust to use
generic_force_reloc.
(alpha_fix_adjustable): Likewise.
* config/tc-arm.c (arm_force_relocation): Likewise.
* config/tc-cris.c (md_cris_force_relocation): Likewise.
* config/tc-frv.c (frv_force_relocation): Likewise.
* config/tc-i386.c (md_apply_fix3): Likewise.
* config/tc-ia64.c (ia64_force_relocation): Likewise.
* config/tc-ip2k.c (ip2k_force_relocation): Likewise.
* config/tc-m32r.c (m32r_force_relocation): Likewise.
* config/tc-m68hc11.c (tc_m68hc11_force_relocation): Likewise.
* config/tc-mcore.c (mcore_force_relocation): Likewise.
* config/tc-mips.c (mips_force_relocation): Likewise.
* config/tc-mmix.c (mmix_force_relocation): Likewise.
* config/tc-ppc.c (ppc_force_relocation): Likewise.
* config/tc-s390.c (tc_s390_force_relocation): Likewise.
* config/tc-sh.c (sh_force_relocation): Likewise.
(md_pcrel_from_section): Likewise.
* config/tc-sparc.c (tc_gen_reloc): Likewise.
* config/tc-v850.c (v850_force_relocation): Likewise.
* config/tc-xstormy16.c (xstormy16_force_relocation): Likewise.
* config/tc-i386.h (TC_FORCE_RELOCATION): Likewise.
* config/tc-mcore.h (TC_FORCE_RELOCATION): Likewise.
* config/tc-sparc.h (tc_fix_adjustable): Likewise.
* config/tc-d10v.c (d10v_force_relocation): Delete.
* config/tc-d10v.h (TC_FORCE_RELOCATION): Don't define.
* config/tc-dlx.c (md_dlx_force_relocation): Delete.
* config/tc-dlx.h (TC_FORCE_RELOCATION): Don't define.
* config/tc-fr30.c (fr30_force_relocation): Delete.
* config/tc-fr30.h (TC_FORCE_RELOCATION): Don't define.
* config/tc-mn10300.c (mn10300_force_relocation): Delete.
* config/tc-mn10300.h (TC_FORCE_RELOCATION): Don't define.
(TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
* config/tc-i960.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise.
* config/tc-hppa.c (hppa_force_relocation): Adjust S_FORCE_RELOC call.
* config/tc-mips.c (RELAX_BRANCH_TOOFAR): Warning fix.
* config/tc-mips.h (TC_FORCE_RELOCATION_SUB_SAME): Don't define.
* config/tc-openrisc.c (openrisc_force_relocation): Delete.
* config/tc-openrisc.h (TC_FORCE_RELOCATION): Don't define.
* config/tc-sparc.c (elf32_sparc_force_relocation): Delete.
* config/tc-sparc.h (TC_FORCE_RELOCATION): Don't define for ELF.
* config/tc-i386.c (i386_force_relocation): Delete.
* config/tc-i386.h (TC_FORCE_RELOCATION): Don't define for
BFD_ASSEMBLER.
(EXTERN_FORCE_RELOC): Fix TE_PE and STRICT_PE_FORMAT nesting.
* config/tc-m68k.h (TC_FORCE_RELOCATION): Don't define.
* config/tc-pj.h (TC_FORCE_RELOCATION): Don't define.
* config/tc-sh.h (TC_FORCE_RELOCATION_SUB_ABS): Don't call
S_FORCE_RELOC.
(TC_FORCE_RELOCATION_SUB_SAME): Test TC_FORCE_RELOCATION too.
* config/tc-sh64.h (TC_FORCE_RELOCATION_SUB_SAME): Likewise.
2003-01-23 12:51:05 +00:00
Alan Modra
b34976b65a
s/boolean/bfd_boolean/ s/true/TRUE/ s/false/FALSE/. Simplify
...
comparisons of bfd_boolean vars with TRUE/FALSE. Formatting.
2002-11-30 08:39:46 +00:00
Jeff Law
502b19cb2a
* config/tc-hppa.c (md_apply_fix3): Don't set fx_done for
...
marker relocations such as ENTRY/EXIT.
* config/tc-hppa.h (MD_APPLY_SYM_VALUE): Definition applies
to both OBJ_ELF and OBJ_SOM.
2002-09-09 21:31:40 +00:00
Alan Modra
a161fe5320
gas reloc rewrite.
2002-09-05 00:01:18 +00:00
Alan Modra
9f1838ed64
* config/tc-arc.c (md_pseudo_table <dwarf2_directive_file>): Cast.
...
* config/tc-frv.c: Likewise.
* config/tc-hppa.c: Likewise.
* config/tc-ia64.c: Likewise.
* config/tc-ip2k.c: Likewise.
* config/tc-m68hc11.c: Likewise.
* config/tc-m68k.c: Likewise.
* config/tc-mmix.c: Likewise.
* config/tc-mn10300.c: Likewise.
* config/tc-sh.c: Likewise.
* config/tc-sparc.c: Likewise.
* config/tc-v850.c: Likewise.
2002-08-20 23:49:27 +00:00
Jeff Law
ec8b3afdf2
* gas/config/tc-hppa.c (pa_ip): Replace "L$0\001" with FAKE_LABEL_NAME.
...
(hppa_force_relocation): Check if a stub just before the start symbol
of the last call_info is reachable before forcing relocation. Fix
typo.
2002-06-06 06:50:12 +00:00
Kazu Hirata
cc8a6dd09b
* config/obj-coff.c: Fix formatting.
...
* config/obj-elf.c: Likewise.
* config/tc-alpha.c: Likewise.
* config/tc-arm.c: Likewise.
* config/tc-d10v.c: Likewise.
* config/tc-d30v.c: Likewise.
* config/tc-h8300.c: Likewise.
* config/tc-hppa.c: Likewise.
2002-05-09 13:12:57 +00:00
Jeff Law
40d74fb122
2002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
...
* config/tc-hppa.c (md_apply_fix3): Add cast.
(hppa_fix_adjustable): Adjust list of selectors using e_lrsel and
e_rrsel.
2002-03-05 17:57:17 +00:00
Alan Modra
c7d004c5d3
* config/tc-hppa.c: Update copyright date.
2002-02-25 05:10:11 +00:00
Alan Modra
3dcfe21d78
* config/tc-hppa.c (hppa_fix_adjustable): Don't adjust final types
...
that implicitly use LR and RR selectors.
2002-02-12 11:08:54 +00:00
Jeff Law
1d358ee0cc
* config/tc-hppa.c (pa_ip): Handle new 'c' mode completers,
...
'X', 'M', and 'A'.
2001-12-31 23:47:02 +00:00
H.J. Lu
e0ac8af02a
2001-11-15 H.J. Lu <hjl@gnu.org>
...
* config/tc-hppa.c (md_apply_fix3): Fix a typo.
2001-11-16 07:27:59 +00:00
Nick Clifton
94f592af1b
Update all uses of md_apply_fix to use md_apply_fix3. Make it a void function.
2001-11-15 21:29:00 +00:00
Kazu Hirata
b6ff326eba
* config/tc-alpha.c: Fix comment typos.
...
* config/tc-cris.c: Likewise.
* config/tc-hppa.c: Likewise.
* config/tc-i370.c: Likewise.
* config/tc-mips.c: Likewise.
* config/tc-mn10200.c: Likewise.
* config/tc-mn10300.c: Likewise.
* config/tc-sh.c: Likewise.
* config/tc-tahoe.c: Likewise.
* config/tc-v850.c: Likewise.
2001-10-11 23:56:33 +00:00
H.J. Lu
3882b01078
Locale changes from Bruno Haible <haible@clisp.cons.org>.
2001-09-19 05:33:36 +00:00
Kazu Hirata
0772685173
* config/tc-alpha.h: Fix formatting.
...
* config/tc-arc.c: Likewise.
* config/tc-d10v.h: Likewise.
* config/tc-hppa.c: Likewise.
* config/tc-i370.c: Likewise.
* config/tc-i386.h: Likewise.
* config/tc-i960.h: Likewise.
* config/tc-ia64.c: Likewise.
* config/tc-ia64.h: Likewise.
* config/tc-m32r.c: Likewise.
* config/tc-m68k.c: Likewise.
* config/tc-m88k.c: Likewise.
* config/tc-ns32k.c: Likewise.
* config/tc-pdp11.c: Likewise.
* config/tc-pj.h: Likewise.
* config/tc-s390.c: Likewise.
* config/tc-sparc.c: Likewise.
* config/tc-sparc.h: Likewise.
* config/tc-tic80.c: Likewise.
* config/tc-w65.h: Likewise.
2001-07-23 14:02:13 +00:00
Alan Modra
677537c186
* config/tc-hppa.c (pa_parse_nonneg_cmpsub_cmpltr): Remove
...
"isbranch" param as all calls have it set.
(pa_parse_neg_cmpsub_cmpltr): Likewise.
(pa_parse_nonneg_add_cmpltr): Likewise. Remember result of
strcasecmp in "nullify" var.
(pa_parse_neg_add_cmpltr): Likewise.
(pa_ip): Don't "save_s" unnecessarily. Update calls to above
functions. Don't print wrong conditions in error messages.
2001-07-23 12:50:22 +00:00
Nick Clifton
8be31359fc
Add %mrp (millicode return pointer) alias for %r2 or %r31, depending on 32 or
...
64 bit architecture.
2001-06-22 08:17:57 +00:00
Alan Modra
b091f402a9
* config/tc-hppa.c (CHECK_FIELD_WHERE): Define.
...
(md_apply_fix): Use it here. Replace printf with equivalent
as_bad_where.
(tc_gen_reloc): Use as_bad_where instead of as_bad.
(md_apply_fix): Here too.
* config/tc-i386.c (tc_gen_reloc): Use as_bad_where instead of as_bad.
* config/tc-m68k.c (tc_gen_reloc): Likewise.
(md_convert_frag_1): Likewise.
2001-06-21 06:12:11 +00:00
Alan Modra
8a238888b4
Default hppa64 to ".level 2.0w"
2001-03-28 14:13:46 +00:00
Nick Clifton
f7e42eb4af
Fix copyright notices
2001-03-08 23:24:26 +00:00
Alan Modra
8ea46bbdec
(pa_build_unwind_subspace): Don't call
...
md_number_to_chars with size > sizeof (valueT).
2001-02-08 00:15:36 +00:00
Alan Modra
da6c73e080
Fix unwind info when cross-compiling from little-endian machines.
2001-02-06 02:52:09 +00:00
Alan Modra
22862cde86
Fix a null-pointer dereference and some range checks.
2001-01-30 13:13:29 +00:00
Alan Modra
64afeba389
Support hand-crafted .PARISC.unwind entries
2001-01-16 13:52:16 +00:00
Alan Modra
1d3d5051d1
Build unwind info for more than just .text section.
2001-01-16 13:06:14 +00:00
Alan Modra
c46b75158b
Use SEGREL32 relocs for elf32-hppa unwind.
2001-01-14 07:03:49 +00:00
Alan Modra
1328dc9844
Adds assembly and dis-assembly support for the HPPA wide
...
mode, 16 bit forms of ldi, ldo, ldw and stw instructions.
2001-01-14 05:14:45 +00:00
Alan Modra
0485cba3d3
Rodney Brown's CHECK_FIELD typo fixes.
2000-12-13 06:23:56 +00:00
Kazu Hirata
bc80588841
2000-12-03 Kazu Hirata <kazu@hxi.com>
...
* tc-a29k.c: Fix formatting.
* tc-alpha.c: Likewise.
* tc-arm.c: Likewise.
* tc-cris.c: Likewise.
* tc-hppa.c: Likewise.
* tc-i370.c: Likewise.
* tc-i386.c: Likewise.
* tc-i860.c: Likewise.
* tc-i960.c: Likewise.
* tc-ia64.c: Likewise.
* tc-m68hc11.c: Likewise.
* tc-m68k.c: Likewise.
* tc-m88k.c: Likewise.
* tc-pj.c: Likewise.
* tc-ppc.c: Likewise.
* tc-sh.c: Likewise.
* tc-sparc.c: Likewise.
* tc-tahoe.c: Likewise.
* tc-vax.c: Likewise.
2000-12-03 06:49:23 +00:00
Richard Henderson
4dc7ead9fd
* as.c (debug_type): Init to DEBUG_UNSPECIFIED.
...
* as.h (debug_type): Clarify documentation of the meaning
of this variable.
* dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1.
(print_stats): Fix parenthesis problem.
(now_subseg_size): New.
(dwarf2_finish): Use it. If DEBUG_DWARF2, emit bits for .debug_info.
(dwarf2_directive_file): Don't set debug_type.
(dwarf2_where): Honor DEBUG_DWARF2 first.
(dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno;
do nothing if not emitting dwarf2 debug info, or no work.
* dwarf2dbg.h (dwarf2_emit_insn): Update.
* ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED.
(ecoff_new_file): Likewise.
* read.c (generate_lineno_debug): Kill ecoff hackery. Update
commentary wrt dwarf2.
* config/tc-alpha.c (alpha_adjust_symtab_relocs): Add
ATTRIBUTE_UNUSED as needed.
(emit_insn): Call dwarf2_emit_insn.
(s_alpha_file): New.
(s_alpha_loc): New.
(s_alpha_coff_wrapper): Don't handle them.
(md_pseudo_table): Update for .file and .loc.
* config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
* config/tc-arm.c (output_inst): Update for dwarf2_emit_insn;
don't protect with debug_type.
* config/tc-hppa.c (md_assemble): Likewise.
* config/tc-m68hc11.c (m68hc11_new_insn): Likewise.
* config/tc-mn10300.c (md_assemble): Likewise.
* config/tc-sh.c (md_assemble): Likewise.
* config/tc-v850.c (md_assemble): Likewise.
* config/tc-arm.c (arm_end_of_source): Remove.
* config/tc-hppa.c (pa_end_of_source): Remove.
* config/tc-m68hc11.c (m68hc11_end_of_source): Remove.
* config/tc-mn10300.c (mn10300_finalize): Remove.
* config/tc-sh.c (sh_finalize): Remove.
* config/tc-v850.c (sh_finalize): Remove.
* config/tc-arm.h (md_end): Remove.
* config/tc-hppa.h (md_end): Remove.
(DWARF2_LINE_MIN_INSN_LENGTH): New.
* config/tc-m68hc11.h (md_end): Remove.
* config/tc-mn10300.h (md_end): Remove.
* config/tc-sh.h (md_end): Remove.
* config/tc-v850.h (md_end): Remove.
* config/tc-ia64.c (emit_one_bundle): Don't protect
dwarf2 bits with debug_type.
(md_assemble): Likewise.
(ia64_end_of_source): Don't call dwarf2_finish.
2000-11-17 08:47:52 +00:00
Nick Clifton
85a3969410
Add --gdwarf2 support to ARM toolchain
2000-10-25 19:15:34 +00:00
Alan Modra
dc1fc56bde
(md_apply_fix): Remove bad assert added 2000-09-26.
2000-10-07 14:38:32 +00:00
Alan Modra
27df9f40e4
For SOM, don't force relocs on out-of-range 12 bit branches.
2000-09-28 06:24:43 +00:00
Alan Modra
5506e1a5d8
External/weak SOM fixes, branch limit corrections.
2000-09-27 16:50:39 +00:00
Alan Modra
959ee54136
* config/tc-hppa.c (hppa_fix_adjustable): Do the external and weak
...
checks only for ELF.
(hppa_force_relocation): Likewise.
2000-09-23 10:06:15 +00:00
Alan Modra
9e75421134
* config/tc-hppa.h (TC_FORCE_RELOCATION_SECTION): For ELF, allow
...
subtraction of two syms without emitting a relocation.
* config/tc-hppa.c (hppa_force_relocation): Force relocations for
global or weak symbols.
2000-09-18 12:36:03 +00:00
Jeff Law
a28a3ccf6a
> * config/tc-hppa.c: Fix formatting.
2000-09-07 01:34:02 +00:00
Alan Modra
ecacdc7a62
.reg improvements.
2000-09-05 03:45:18 +00:00
Alan Modra
904a31bffc
Munge in vtable support for tc-hppa.c, inform elf back-end about
...
millicode, and make $PIC_pcrel$0 work.
2000-09-05 03:23:05 +00:00
Alan Modra
4c400d5ea7
comment-finding hack for hppa-linux.
2000-07-28 05:05:20 +00:00
Alan Modra
25a8b2508d
#ifdef OBJ_SOM, not #ifdef SOM
2000-07-19 06:30:49 +00:00
Alan Modra
1cd1c99be6
(hppa_fix_adjustable): Don't reduce certain symbols to section syms.
2000-07-15 12:57:14 +00:00
Alan Modra
46b85d4287
More warning fixes, and a tweak in tc-hppa.c to check constant
...
branch offsets a little more thoroughly.
2000-07-10 15:15:01 +00:00
Alan Modra
ad1079af05
Add linux-elf flavour to pseudos in tc-hppa.c and some tidying
...
and bug fixes. Handle wide mode relocs. Don't select target
size based on BFD64.
2000-07-09 08:16:21 +00:00
Jeff Law
20348649cc
* config/tc-hppa.c (pa_export): Weak symbols can be global.
2000-06-14 02:58:49 +00:00
Jeff Law
b3b6a3fe2b
* config/tc-hppa.c (md_apply_fix): Mask out immediate bits of
...
instruction to reflect change in re_assemble_*.
2000-05-19 00:21:12 +00:00
Alan Modra
3f9b03b5da
Assorted code cleanup and fixes for hppa. Re-enable elf32-hppa as
...
it now compiles even if it doesn't work too well.
2000-05-02 00:12:52 +00:00
Jeff Law
a02fab7e03
* config/tc-hppa.c (md_apply_fix): Handle new PA2.0 formats.
...
* config/tc-hppa.c (CHECK_ALIGN): New macro.
Added handling of new operand types l,y,&,fe,fE,fx.
2000-04-21 20:34:00 +00:00
Jeff Law
c97305a1da
* config/tc-hppa.c (pa_build_unwind_subspace): Use subseg_new to create
...
the unwinder subspace. Save the current seg/subseg before creating
the new seg/subseg.
2000-02-11 21:27:41 +00:00
Jeff Law
afbf211f5a
* config/tc-hppa.c (pa_ip): Handle PA2.0 unit completers. Handle
...
'B' operand for PA2.0 bb instruction.
1999-11-25 03:27:35 +00:00
Jeff Law
476cdcb88f
* config/tc-hppa.c (md_apply_fix): Make "fmt" an int.
1999-10-17 23:19:13 +00:00
Jeff Law
d53d27516f
* config/tc-hppa.c (pa_ip): Add new codes 'cc', 'cd', 'cC', 'co',
...
'@'. Change autoincrement completers to fall through to cache control
completers.
* config/tc-hppa.c (pa_ip): Remove unused args. Add code to '?W'
arg.
(pa_parse_addb_64_cmpltr): New function.
* config/tc-hppa.c (pa_ip): Change error message.
(pa_ip,pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr) Fix '?N' and
'?Q' args to allow falling through.
* config/tc-hppa.c (pa_ip): Implement conditional codes "?N", "?Q".
Remove unused conditional codes.
(pa_parse_cmpb_64_cmpltr,pa_parse_cmpib_64_cmpltr): New.
1999-10-10 07:57:30 +00:00
Jeff Law
d3426803c5
Remove accidental case duplication.
1999-09-23 16:09:23 +00:00
Jeff Law
ce674324e1
* config/tc-hppa.c (pa_ip): Replace 'B', 'M', 'l' and 'g' handling
...
with cleaner code using completer prefixes. Add 'Y'.
1999-09-23 14:30:31 +00:00
Jeff Law
fd232ac8d5
* config/tc-hppa.c (pa_ip): Add parens to silence compiler.
1999-09-23 13:15:29 +00:00
Jeff Law
b1039fc41e
* config/tc-hppa.c (pa_ip): Avoid ANSI specific initialization.
...
(pa_ip, case 'm'): Failure to get a CBIT specifier just means the
insn does not match and we should try the next insn in the table.
1999-09-22 15:43:26 +00:00
Jeff Law
54af6ff675
* config/tc-hppa.c (pa_ip): Fix thinkos in recent cleanup
...
of PA2.0 support.
1999-09-20 10:06:05 +00:00
Jeff Law
65fab780c5
* config/tc-hppa.c (pa_ip): Handle 'J', 'K' and 'cc'
...
operands.
1999-09-19 20:07:01 +00:00
Jeff Law
71823da428
* config/tc-hppa.c (pa_ip); Handle "fe", and 'cJ'.
1999-09-19 19:46:52 +00:00
Jeff Law
61dd1d313e
* config/tc-hppa.c (pa_ip): Handle 'd', '#' and 'cq'.
1999-09-19 19:23:08 +00:00
Jeff Law
1cf6ae6758
* config/tc-hppa.c (struct pa_it): New field "trunc".
...
(pa_ip): Hadnle 'h', 'm', '=', '{', and '_' operands.
(pa_parse_ftest_gfx_completer): New function
(pa_parse_fp_cnv_format): New function.
1999-09-19 18:47:37 +00:00
Jeff Law
77c02e18c1
* config/tc-hppa.c (pa_ip): Handle 'X' operand.
...
(md_apply_fix): Handle 22bit pc-rel branches.
1999-09-19 18:13:50 +00:00
Jeff Law
629d9417e1
* config/tc-hppa.c (pa_ip): Handle 'B' operand.
1999-09-19 17:38:09 +00:00
Jeff Law
dbe2f9eec8
* config/tc-hppa.c (pa_ip): Handle 'L' and 'M' operands.
1999-09-19 17:09:23 +00:00
Jeff Law
3db6e6bd57
* config/tc-hppa.c (pa_ip): Handle 'l' operand.
1999-09-19 16:58:33 +00:00
Jeff Law
6be783603d
* config/tc-hppa.c (pa_ip): Handle 'g' operand.
1999-09-19 16:45:20 +00:00
Jeff Law
e061d86ffd
* config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.
...
(pa_ip): Handle 'fX'.
1999-09-18 18:16:21 +00:00
Jeff Law
f1a1312b73
Really fix the typo.
1999-09-18 13:41:01 +00:00
Jeff Law
9d957cd576
Fix typo in last change.
1999-09-18 13:26:46 +00:00
Jeff Law
7acbfc6b56
* config/tc-hppa.c (pa_build_unwind_subspace): Do not build
...
unwinds unless the function is in the text space.
(pa_type_args): Set BSF_FUNCTION for an exproted data symbol.
1999-09-17 18:00:50 +00:00
Jeff Law
b52c78b8a6
* config/tc-hppa.c (pa_ip): Move dwarf2 stuff from here.
...
(md_assemble): To here. Tweak address generation.
1999-09-15 13:19:32 +00:00
Jeff Law
2d93dcc450
* config/tc-hppa.c: Include dwarf2dbg.h if OBJ_ELF. Declare
...
debug_line.
(md_pseudo_table): Add .file and .line pseudo-ops for OBJ_ELF.
(md_assemble): Call dwarf2_where for OBJ_ELF.
(pa_ip): Call dwarf2_gen_line_info for OBJ_ELF.
(pa_end_of_source): New function.
* tc-hppa.h (md_end): Define for OBJ_ELF.
1999-09-15 11:17:54 +00:00
Jeff Law
4964086a66
* config/tc-hppa.c (pa_ip): Support 'Z' argument.
1999-09-07 19:48:13 +00:00
Jeff Law
e7c1f43c29
* config/tc-hppa.c (pa_ip): Put strict register checks before
...
call to pa_parse_number.
1999-09-07 19:30:14 +00:00
Jeff Law
0f4f8b56e7
* config/tc-hppa.c (pa_ip): Get strict/non-strict mode from the
...
candidate instruction. Require registers for register arguments
when in strict mode. Require assemble-time constants for
constants when in strict mode.
(pa_get_absolute_expression): Require a constant when in strict
mode.
1999-09-06 10:28:21 +00:00
Jeff Law
97e1581b3f
* config/tc-hppa.c (pa_ip): Replace 'f' by 'v'. Prefix float register
...
args by 'f'.
1999-08-29 07:52:32 +00:00
Jeff Law
9e4f2d3a85
* config/tc-hppa.c (pa_ip): Add args q, %, and |.
1999-08-28 10:59:37 +00:00
Jeff Law
680ef6de90
* config/tc-hppa.c (pa_ip): Absorb white space in instructions
...
between args.
Add new completers. Fix bug in 64 bit condition handling.
1999-08-28 10:18:12 +00:00
Jeff Law
413c94baca
* config/tc-hppa.c (pa_ip): Add completer codes 'a', 'ch', 'cH',
...
'cS', and 'c*'.
1999-08-28 08:48:40 +00:00
Jeff Law
28252e6156
* config/tc-hppa.c (pa_ip): Place completers behind prefix 'c'.
1999-08-28 08:16:30 +00:00
Jeff Law
17d9105c0a
* config/tc-hppa.c (pa_ip): Do not allow '*' in 32bit completers.
1999-08-28 07:23:42 +00:00
Jeff Law
a97685e901
* config/tc-hppa.c (pa_ip): Add cases for '.', '~'. '$'. and '!'
1999-08-28 06:42:06 +00:00
Jeff Law
9ecc05f0de
* config/tc-hppa.c (pa_ip): Add case for 'I'.
1999-08-28 06:28:21 +00:00
Jeff Law
b100be6695
* config/tc-hppa.c (pa_build_unwind_subspace): Use sane section
...
flags for the unwind subspace.
1999-08-11 09:41:28 +00:00
Jeff Law
9100134ca0
Fix typos in last change.
1999-08-10 19:09:43 +00:00
Jeff Law
46031ca9e4
* config/tc-hppa.c (UNWIND_SECTION_NAME): Define for ELF.
...
(pa_build_unwind_subspace): Remove #if 0 wrapper. Select a
suitable relocation based on the size of the target's pointer.
Always Use subsegment zero for the unwinders.
(pa_level): Handle "2.0w".
1999-08-10 19:02:30 +00:00
Jeff Law
0741736bf6
* config/tc-hppa.c (pa_ip, case '?'): Add missing break.
1999-08-06 18:13:31 +00:00
Jeff Law
9a913dfbfb
* config/tc-hppa.c (pa_ip): Add 64 bit condition completers.
1999-08-06 15:48:42 +00:00
Jeff Law
55a914bc48
* config/tc-hppa.c (pa_ip): Change condition args to have '?' prefix.
1999-08-05 22:56:06 +00:00
Jeff Law
39ba556164
* config/tc-hppa.c (pa_chk_field_selector): Allow 3 byte
...
selectors for ELF too.
(selector_table): Add "ltp" and "rtp" selectors.
1999-08-05 00:09:42 +00:00
Jeff Law
b53fcc20b1
* config/tc-hppa.c (pa_ip): Add 'J' and 'K' code
...
processing.
1999-07-28 08:07:14 +00:00
Jeff Law
077db52a1e
d
...
* config/tc-hppa.c (md_pseudo_table): Add ".dword" pseudo-op.
(cons_fix_new_hppa): Derive size of fixup from size of the object.
1999-07-15 01:49:48 +00:00
Jeff Law
b1c5e0ee59
h
...
* config/tc-hppa.c (pa_ip): Convert the opcode and all completers
into lower case.
1999-07-01 14:37:29 +00:00
Jeff Law
b388df8754
d
...
* tc-hppa.c (elf_hppa_reloc_type): Renamed from elf32_hppa_reloc_type.
(hppa_gen_reloc_type): Conditionalize on BFD64.
(tc_gen_reloc): Re-enable ELF relocations.
* tc-hppa.h (TARGET_FORMAT): Handle elf64-hppa format.
1999-06-21 15:48:51 +00:00
Jeff Law
49863f82f0
* tc-hppa.c: General cleanups of ELF support. No more spaces
...
and subspaces for ELF.
(GDB_DEBUG_SPACE_NAME): Delete definition for ELF.
(GDB_STRINGS_SUBSPACE_NAME): Likewise.
(GDB_SYMBOLS_SUBSPACE_NAME): Likewise
(UNWIND_SECTION_NAME): Likewise.
(space/subspace related structures): Conditionalize definitions
on OBJ_SOM.
(space/subspace directives and support routines): Conditionalize
definitions and references/uses on OBJ_SOM.
(label_symbol_struct): For ELF, track the symbol's segment. For
SOM track its space.
(pa_define_label, pa_undefine_label, pa_get_label): Corresponding
changes.
(USE_ALIASES): Kill for both SOM & ELF.
(pa_def_subspaces, pa_def_spaces): Corresponding changes.
(pa_space, pa_subspace): Corresponding changes.
(pa_spaces_begin): Corresponding chagnes.
(md_begin): Do not muck around with space/subspace stuff for
OBJ_ELF.
(md_apply_fix): Temporarily disable argument relocation stuff
for OBJ_ELF.
(tc_gen_reloc): Temporarily disable relocation generation for
OBJ_ELF
(pa_build_unwind_subspace): Similarly.
1999-06-18 13:35:16 +00:00
Ian Lance Taylor
993142d5a4
1999-06-04 Mark Klein <mklein@dis.com>
...
* config/tc-hppa.c (md_begin): Convert local symbol dummy_symbol
to real if OBJ_SOM
(tc_gen_reloc): Still need bfd_abs_symbol in some relocs.
1999-06-04 21:08:54 +00:00
Ian Lance Taylor
398e8c258a
1999-06-04 Mark Klein <mklein@dis.com>
...
* config/tc-hppa.c: Update for symbol handling changes.
1999-06-04 10:46:25 +00:00
Ian Lance Taylor
a0f75b47e9
* config/tc-hppa.h: Update for symbol handling changes.
...
* config/tc-hppa.c: Likewise.
1999-06-03 12:42:36 +00:00
Ian Lance Taylor
49309057b4
Add support for storing local symbols in a small structure to save
...
memory when assembling large files.
* as.h: Don't include struc-symbol.h.
(symbolS): Add typedef.
* symbols.c: Include struc-symbol.h.
(local_hash): New static variable.
(save_symbol_name): New static function, from symbol_create.
(symbol_create): Call save_symbol_name.
(local_symbol_count): New static variable.
(local_symbol_conversion_count): Likewise.
(LOCAL_SYMBOL_CHECK): Define.
(local_symbol_make): New static function.
(local_symbol_convert): New static function.
(colon): Handle local symbols. Create local symbol for local
label name.
(symbol_table_insert): Handle local symbols.
(symbol_find_or_make): Create local symbol for local label name.
(symbol_find_base): Check for local symbol.
(symbol_append, symbol_insert): Check for local symbols.
(symbol_clear_list_pointers, symbol_remove): Likewise.
(verify_symbol_chain): Likewise.
(copy_symbol_attributes): Likewise.
(resolve_symbol_value): Handle local symbols.
(resolve_local_symbol): New static function.
(resolve_local_symbol_values): New function.
(S_GET_VALUE, S_SET_VALUE): Handle local symbols.
(S_IS_FUNCTION, S_IS_EXTERNAL, S_IS_WEAK, S_IS_COMMON): Likewise.
(S_IS_DEFINED, S_IS_DEBUG, S_IS_LOCAL, S_GET_NAME): Likewise.
(S_GET_SEGMENT, S_SET_SEGMENT, S_SET_EXTERNAL): Likewise.
(S_CLEAR_EXTERNAL, S_SET_WEAK, S_SET_NAME): Likewise.
(symbol_previous, symbol_next): New functions.
(symbol_get_value_expression): Likewise.
(symbol_set_value_expression): Likewise.
(symbol_set_frag, symbol_get_frag): Likewise.
(symbol_mark_used, symbol_clear_used, symbol_used_p): Likewise.
(symbol_mark_used_in_reloc): Likewise.
(symbol_clear_used_in_reloc, symbol_used_in_reloc_p): Likewise.
(symbol_mark_mri_common, symbol_clear_mri_common): Likewise.
(symbol_mri_common_p): Likewise.
(symbol_mark_written, symbol_clear_written): Likewise.
(symbol_written_p): Likewise.
(symbol_mark_resolved, symbol_resolved_p): Likewise.
(symbol_section_p, symbol_equated_p): Likewise.
(symbol_constant_p): Likewise.
(symbol_get_bfdsym, symbol_set_bfdsym): Likewise.
(symbol_get_obj, symbol_set_obj): Likewise.
(symbol_get_tc, symbol_set_tc): Likewise.
(symbol_begin): Initialize local_hash.
(print_symbol_value_1): Handle local symbols.
(symbol_print_statistics): Print local symbol statistics.
* symbols.h: Include "struc-symbol.h" if not BFD_ASSEMBLER.
Declare new symbols.c functions. Move many declarations here from
struc-symbol.h.
(SYMBOLS_NEED_BACKPOINTERS): Define if needed.
* struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Don't set.
(struct symbol): Move bsym to make it clearly the first field.
Remove TARGET_SYMBOL_FIELDS.
(symbolS): Don't typedef.
(struct broken_word): Remove.
(N_TYPE_seg, seg_N_TYPE): Move to symbol.h.
(SEGMENT_TO_SYMBOL_TYPE, N_REGISTER): Likewise.
(symbol_clear_list_pointers): Likewise.
(symbol_insert, symbol_remove): Likewise.
(symbol_previous, symbol_append): Likewise.
(verify_symbol_chain, verify_symbol_chain_2): Likewise.
(struct local_symbol): Define.
(local_symbol_converted_p, local_symbol_mark_converted): Define.
(local_symbol_resolved_p, local_symbol_mark_resolved): Define.
(local_symbol_get_frag, local_symbol_set_frag): Define.
(local_symbol_get_real_symbol): Define.
(local_symbol_set_real_symbol): Define.
Define.
* write.c (write_object_file): Call resolve_local_symbol_values.
* config/obj-ecoff.h (OBJ_SYMFIELD_TYPE): Define.
(TARGET_SYMBOL_FIELDS): Don't define.
* config/obj-elf.h (OBJ_SYMFIELD_TYPE): Add local field. If
ECOFF_DEBUGGING, add ECOFF fields.
(ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
* config/obj-multi.h (struct elf_obj_sy): Add local field. If
ECOFF_DEBUGGING, add ECOFF fields.
(ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
(ECOFF_DEBUG_TARGET_SYMBOL_FIELDS): Don't define.
* config/tc-mcore.h: Don't include struc-symbol.h.
(TARGET_SYMBOL_FIELDS): Don't define.
(struct mcore_tc_sy): Define.
(TC_SYMFIELD_TYPE): Define.
* Many files: Use symbolS instead of struct symbol. Use new
accessor functions rather than referring to symbolS fields
directly.
* read.c (s_mri_common): Don't add in value of line_label.
* config/tc-mips.c (md_apply_fix): Correct parenthesization when
checking for SEC_LINK_ONCE.
* config/tc-sh.h (sh_fix_adjustable): Declare.
1999-06-03 00:29:48 +00:00