On 09/24/2014 01:20 AM, Claudio Fontana wrote: >> @@ -1118,7 +1119,8 @@ static void tcg_out_qemu_ld_direct(TCGContext *s, >> TCGMemOp memop, >> tcg_out_ldst_r(s, I3312_LDRB, data_r, addr_r, off_r); >> break; >> case MO_SB: >> - tcg_out_ldst_r(s, I3312_LDRSBX, data_r, addr_r, off_r); >> + tcg_out_ldst_r(s, type ? I3312_LDRSBX : I3312_LDRSBW, >> + data_r, addr_r, off_r); > > > since we are using the enum type TCGType, why do we check type as "type ?" > > I would have expected the conditional to be something like > > type == TCG_TYPE_I32 ? I3312_LDRSBW : I3312_LDRSBX > > It's pretty obvious what is happening but it might spare someone a lookup > into the header file > to test that type 0 is indeed TCG_TYPE_I32.
We assert the boolean-ish nature of TCGType at the start of the file, and use it for the "ext" variable throughout. Would it help if the variable weren't named "type"? r~