[committed] MIPS/GAS: Fix an ISA override not lifting ABI restrictions

Hans-Peter Nilsson hans-peter.nilsson@axis.com
Fri Apr 22 03:36:00 GMT 2016
> Date: Fri, 22 Apr 2016 01:26:55 +0100
> From: "Maciej W. Rozycki" <macro@imgtec.com>

> Correct a regression introduced with commit 919731affbef ("Add MIPS 
> .module directive") causing code like:
> 
> 	.set	mips3
> 	dli	$2, 0x9000000080000000
> 
> to fail assembly with the following error message produced:
> 
> Error: number (0x9000000080000000) larger than 32 bits
> 
> if built with `mips3' selected as the global ISA (e.g. `-march=mips3'). 
> This is because a `.set' directive doing an ISA override does not lift 
> the ABI restriction on register sizes if the ISA remains unchanged.  
> Previously the directive always set register sizes from the ISA chosen, 
> which is what some code expects.  Restore the old semantics then.

Maybe this fixes PR16288?

brgds, H-P



More information about the Binutils mailing list