Improve warnings about MIPS macros

Thiemo Seufer ica2_ts@csv.ica.uni-stuttgart.de
Wed Jan 21 23:12:00 GMT 2004


Richard Sandiford wrote:
[snip]
> Tested on mips64-linux-gnu.  OK to install?
> 
> Richard
> 
> 
> gas/
> 	* config/tc-mips.c (RELAX_ENCODE): Remove WARN argument.
> 	(RELAX_FIRST, RELAX_SECOND): Turn into 8-bit quantities.
> 	(RELAX_USE_SECOND): Bump to 0x10000.
> 	(RELAX_SECOND_LONGER, RELAX_NOMACRO, RELAX_DELAY_SLOT): New flags.
> 	(mips_macro_warning): New variable.
> 	(md_assemble): Wrap macro expansion in macro_start() and macro_end().
> 	(s_cpload, s_cpsetup, s_cprestore, s_cpreturn): Likewise.
> 	(relax_close_frag): Set mips_macro_warning.first_frag.  Adjust use
> 	of RELAX_ENCODE.
> 	(append_insn): Update mips_macro_warning.sizes.
> 	(macro_start, macro_warning, macro_end): New functions.
> 	(macro_build): Don't emit warnings here.
> 	(macro_build_lui, md_estimate_size_before_relax): ...or here.
> 	(md_convert_frag): Check for cases where one macro alternative
> 	needs a warning and the other doesn't.  Emit a warning if the
> 	longer sequence was chosen.
> 
> gas/testsuite/
> 	* gas/mips/macro-warn-[1234].[sdl]: New tests.
> 	* gas/mips/macro-warn-[12]-n32.[dl]: New tests.
> 	* gas/mips/mips.exp: Run them.

Ok.


Thiemo



More information about the Binutils mailing list