+// put rt_val into rt, potentially making use of rs with value rs_val
+static void emit_movimm_from(u_int rs_val,int rs,u_int rt_val,int rt)
+{
+ u_int xor=rs_val^rt_val;
+ u_int xs;
+ for(xs=xor;xs!=0&&(xs&3)==0;xs>>=2)
+ ;
+ if(xs<0x100)
+ emit_xorimm(rs,xor,rt);
+ else
+ emit_movimm(rt_val,rt);
+}