Support for VFP instructions
[deliverable/binutils-gdb.git] / gas / ChangeLog
1 2002-01-15 Richard Earnshaw <rearnsha@arm.com>
2
3 Support for VFP instructions
4 * tc-arm.c (CP_WB_OK, CP_NO_WB): New defines.
5 (cp_address_required_here): New argument wb_ok. When false, do not
6 accept write-back forms of addressing. Change all callers.
7 (FPU_VFP_EXT_NONE, FPU_VFP_EXT_V1xD, FPU_VFP_VFP_V1)
8 (FPU_VFP_EXT_V2): Define.
9 (FPU_ARCH_VFP, FPU_ARCH_VFP_V1xD, FPU_ARCH_VFP_V1, FPU_ARCH_VFP_V2):
10 Define in terms of above.
11 (vfp_dp_reg_pos, vfp_sp_reg_pos, vfp_ldstm_type): New enums.
12 (vfp_reg): New struct.
13 (vfp_regs): New array of registers.
14 (insns): Add VFP instructions.
15 (sn_table): New array of VFP single-precision register names.
16 (dn_table): New array of VFP double-precision register names.
17 (all_reg_maps): Add the new register tables.
18 (arm_reg_type): Add new values for above. Increase RET_TYPE_MAX.
19 (vfp_sp_reg_required_here, vfp_dp_reg_required_here, do_vfp_sp_monadic)
20 (do_vfp_dp_monadic, do_vfp_sp_dyadic, do_vfp_dp_dyadic)
21 (do_vfp_reg_from_sp, do_vfp_sp_reg2, do_vfp_sp_from_reg)
22 (do_vfp_reg_from_dp, do_vfp_reg2_from_dp, do_vfp_dp_from_reg)
23 (do_vfp_dp_from_reg2, vfp_psr_parse, vfp_psr_required_here)
24 (do_vfp_reg_from_ctrl, do_vfp_ctrl_from_reg, do_vfp_sp_ldst)
25 (do_vfp_dp_ldst, vfp_sp_reg_list, vfp_dp_reg_list, vfp_sp_ldstm)
26 (vfp_dp_ldstm, do_vfp_sp_ldstmia, do_vfp_sp_ldstmdb, do_vfp_ldstmia)
27 (do_vfp_dp_ldstmdb, do_vfp_xp_ldstmia, do_vfp_xp_ldstmdb)
28 (do_vfp_sp_compare_z, do_vfp_dp_compare_z, do_vfp_dp_sp_cvt)
29 (do_vfp_sp_dp_cvt): New functions.
30 (md_begin): Set soft-float flag for appropriate VFP work.
31 (md_atof): Handle VFP-format doubles.
32 (md_parse_option): Handle VFP command-line options.
33 (md_show_usage): Display VFP command-line options.
34
35 2002-01-15 Richard Earnshaw <rearnsha@arm.com>
36
37 * tc-arm.c (md_parse_option): Tidy up setting of cpu_variant for
38 various command line options.
39
40 2002-01-15 Nick Clifton <nickc@cambridge.redhat.com>
41
42 * config/tc-xstormy16.c: (xstormy16_fix_adjustable): Do not fix
43 vtinherit relocs.
44 (xstormy16_md_apply_fix3): Do not return a value.
45
46 2002-01-14 Richard Earnshaw <rearnsha@arm.com>
47
48 * tc-arm.c (md_longopts): On targets that aren't bi-endian, support
49 the -EL/-EB option that matches the target's endianness.
50 (md_parse_option): Likewise.
51
52 2002-01-14 Richard Earnshaw <rearnsha@arm.com>
53
54 * tc-arm.c (md_longopts): Fix misplaced #endif -- the -oabi option
55 is not dependent on ARM_BI_ENDIAN.
56
57 2002-01-14 Richard Earnshaw <rearnsha@arm.com>
58
59 * tc-arm.c (all error messages): Normalize capitalization of messages.
60
61 * tc-arm.h (md_operand): Delete define.
62 * tc-arm.c (in_my_get_expression): New static variable.
63 (my_get_expression): Set and clear it.
64 (md_operand): New function. If called from my_get_expression
65 put the error in inst.error.
66 (output_inst): Now takes argument of instruction being assembled.
67 Print it out with any error message.
68 (do_ldst, do_ldstv4, thumb_load_store): Fault attempt to use a store
69 with '=' syntax.
70 (end_of_line): Don't update inst.error if it is already set.
71
72 2002-01-11 Richard Earnshaw <rearnsha@arm.com>
73
74 * tc-arm.c ((do_ldst): Fix handling an immediate expression pseudo
75 op that can be translated into a mvn instruction.
76
77 2002-01-11 Steve Ellcey <sje@cup.hp.com>
78
79 * gas/config/tc-ia64.h (MD_FLAGS_DEFAULT): New Macro for
80 setting default md.flags.
81 (SHT_INIT_ARRAY): New elf special section used by HP-UX.
82 (SHT_FINI_ARRAY): New elf special section used by HP-UX.
83 * gas/config/tc-ia64.c (setup_unwind_header): Add support
84 for 32 bit unwind info blocks.
85 (generate_unwind_image): Add support for different types
86 of unwind images (32 bits and/or big-endian).
87 (ia64_init): Use MD_FLAGS_DEFAULT to set md.flags.
88 (ia64_target_format): Add support for hpux target formats.
89 (ia64_gen_real_reloc_type): Add support for FUNC_IPLT_RELOC.
90 (ia64_elf_section_type): Add support for SHT_INIT_ARRAY and
91 SHT_FINI_ARRAY elf section types.
92
93 2002-01-10 Richard Earnshaw <rearnsha@arm.com>
94
95 * tc-arm.c (struct reg_entry): Move before prototypes.
96 (int_register, cp_register, fp_register): Delete.
97 (reg_table): Delete. Replaced with ...
98 (rn_table, cp_table, cn_table, fn_table, mav_mvf_table)
99 (mav_mvd_table, mav_mvfx_table, mav_mvdx_table, mav_mvax_table)
100 (mav_dspsc_table): ... one table per register set.
101 (arm_reg_hsh): Delete.
102 (struct reg_map): New structure.
103 (all_reg_maps): New array.
104 (enum arm_reg_type): New enums.
105 (build_reg_hsh): New function.
106 (insert_reg_alias): Use hash table passed by caller. Adjust all
107 callers.
108 (create_register_alias): New function, split out from ...
109 (md_assemble): ... here.
110 (md_begin): Build new register hash tables.
111 (arm_reg_parse): New argument for the hash table to search. Adjust all
112 callers.
113 (arm_reg_parse_any): New function.
114 (co_proc_number): Look up the processor number in the processor hash
115 table.
116 (cirrus_regtype): Delete.
117 (cirrus_register, cirrus_mvf_register, cirrus_mvd_register)
118 (cirrus_mvfx_register, cirrus_mvdx_register, cirrus_mvax_register)
119 (ARM_EXT_MAVERICKsc_register): Delete.
120 (do_c_binops_1, do_c_binops_2, do_c_binops_3): Delete.
121 (do_c_binops_1[a-o], do_c_binops_2[a-c], do_c_binops_3[a-d]): New
122 functions.
123 (do_c_triple_4, do_c_triple_5): Delete.
124 (do_c_triple_4[ab], do_c_triple_5[a-h]): New functions.
125 (do_c_quad_6): Delete.
126 (do_c_quad_6[ab]): New functions.
127 (do_c_binops, do_c_triple, do_c_quad, do_c_shift, do_c_ldst): Rework
128 arguments to use new register parsing methods.
129 (cirrus_reg_required_here): Likewise.
130 (insns): Reclassify cirrus maverick worker functions.
131 (cirrus_valid_reg): Delete.
132
133 2002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
134
135 * configure.in (sh*le): Set cpu_type=sh and endian=little.
136 (sh*-*-netbsdelf*): New target.
137 * configure: Regenerate.
138 * tc-sh.h: Update copyright years.
139 (TARGET_FORMAT): Add version for TE_NetBSD.
140
141 2002-01-07 Nick Clifton <nickc@cambridge.redhat.com>
142
143 * read.c (emit_expr): Do not allow 'size' or 'nbytes' to go
144 negative.
145
146 2002-01-06 Alan Modra <amodra@bigpond.net.au>
147
148 * config/tc-m68k.h (md_prepare_relax_scan): Rewrite.
149 * config/tc-m68k.c (md_relax_table): Add md_prepare_relax_scan comment.
150
151 2002-01-05 Daniel Jacobowitz <drow@mvista.com>
152
153 * tc-mips.c (mips_cprestore_valid): New flag.
154 (mips_frame_reg_valid): New flag.
155 (macro) [M_JAL_2]: Check both flags.
156 [M_JAL_A]: Likewise.
157 (s_cprestore): Set mips_cprestore_valid.
158 (tc_get_register): If setting mips_frame_reg, set
159 mips_frame_reg_valid and clear mips_cprestore_valid.
160 (s_mips_ent): Clear both flags.
161 (s_mips_end): Clear both flags.
162
163 2002-01-05 Alan Modra <amodra@bigpond.net.au>
164
165 * write.c (write_object_file): Make use of bfd_section_list_remove.
166 * config/obj-ecoff.c (ecoff_frob_file): Likewise.
167 * config/tc-mmix.c (mmix_frob_file): Likewise.
168
169 2002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
170
171 * configure.in (i386-*-netbsdelf*): Collapse target into...
172 (i386-*-netbsd*): ...this. Add support for x86-64.
173 * configure: Regenerated.
174
175 2002-01-03 matthew green <mrg@redhat.com>
176
177 * config/tc-ppc.c (md_parse_option): BookE is not Motorola specific.
178
179 2002-01-02 Nick Clifton <nickc@cambridge.redhat.com>
180
181 * config/tc-m68k.c (md_estimate_size_before_relax): Test for a
182 NULL frag link.
183
184 For older changes see ChangeLog-0001
185 \f
186 Local Variables:
187 mode: change-log
188 left-margin: 8
189 fill-column: 74
190 version-control: never
191 End:
192
This page took 0.033782 seconds and 5 git commands to generate.