[PATCH] microMIPS: Branch swapping support

Richard Sandiford rdsandiford@googlemail.com
Sat Aug 6 10:38:00 GMT 2011
"Maciej W. Rozycki" <macro@codesourcery.com> writes:
>  /* We have no flag to mark the read from "y", so we use TRAP to disable
>     delay slot scheduling of ALNV.PS altogether.  */
>  {"alnv.ps", "D,V,T,y",	0x54000019, 0xfc00003f,	TRAP|WR_D|RD_S|RD_T|FP_D, 0,		I1	},
> -{"and",     "mf,mt,mg",	    0x4480,     0xffc0,	0,			MOD_mf|MOD_mg,	I1	},
> -{"and",     "mf,mg,mx",	    0x4480,     0xffc0,	0,			MOD_mf|MOD_mg,	I1	},
> +{"and",     "mf,mt,mg",	    0x4480,     0xffc0,	0,			WR_mf|RD_mg,	I1	},
> +{"and",     "mf,mg,mx",	    0x4480,     0xffc0,	0,			WR_mf|RD_mg,	I1	},

Unless I'm missing something, it looks like this loses the read from mf.
Same for OR and XOR.

Richard



More information about the Binutils mailing list