On 2/13/19 6:33 AM, David Hildenbrand wrote: > With the floating-point extension facility > - CONVERT FROM LOGICAL > - CONVERT TO LOGICAL > - CONVERT TO FIXED > - CONVERT FROM FIXED > - LOAD FP INTEGER > have both, a rounding mode specification and the inexact-exception control > (XxC). Other instructions will be handled separatly. > > Check for valid rounding modes and forward also the XxC (via m4). To avoid > a lot of boilerplate code and changes to the helpers, combine both, the > m3 and m4 field in a combined 32 bit TCG variable. Perform checks at > a central place, taking in account if the m3 or m4 field was ignore > before the floating-point extension facility was introduced. > > Signed-off-by: David Hildenbrand <[email protected]>
Reviewed-by: Richard Henderson <[email protected]> > +static inline bool xxc_from_m34(uint32_t m34) > +{ > + /* XxC is bit 1 of m4 */ > + return (extract32(m34, 4, 4) & 0x4) != 0; Better as extract32(m32, 6, 1); r~
