On 08/08/13 17:10, Richard Henderson wrote: > On 08/08/2013 04:40 AM, James Hogan wrote: >> tcg/mips/tcg-target.h defines various operations conditionally depending >> upon the isa revision, however these operations are included in >> mips_op_defs[] unconditionally resulting in the following runtime errors >> if CONFIG_DEBUG_TCG is defined: >> >> Invalid op definition for movcond_i32 >> Invalid op definition for rotl_i32 >> Invalid op definition for rotr_i32 >> Invalid op definition for deposit_i32 >> Invalid op definition for bswap16_i32 >> Invalid op definition for bswap32_i32 >> tcg/tcg.c:1196: tcg fatal error >> >> Fix with ifdefs like the i386 backend does for movcond_i32. >> >> Signed-off-by: James Hogan <james.ho...@imgtec.com> >> Cc: Aurelien Jarno <aurel...@aurel32.net> >> Cc: Richard Henderson <r...@twiddle.net> > > Reviewed-by: Richard Henderson <r...@twiddle.net>
Thanks, > Perfect for 1.6. > > For 1.7 it would be really nice if you could figure out some way to make > these runtime tests, instead of ifdefs. I'd have said getauxval(3), but > the mips kernel doesn't seem to define any identifying bits. Perhaps > that's the first thing that ought to get fixed... Yes, the auxvec sounds ideal for this, and AT_HWCAP is already used for cpuid on x86. There were some patches a while ago for exposing the C0 configX registers through sysfs, but auxvec sounds cleaner IMO. Cheers James