[PATCH v4 2/5] sim: cgen: add MUL2OFSI and MUL1OFSI macros (needed for OR1K l.mul[u])

Simon Marchi simon.marchi@polymtl.ca
Mon Sep 4 20:32:00 GMT 2017


> --- a/sim/common/cgen-ops.h
> +++ b/sim/common/cgen-ops.h
> @@ -631,6 +631,22 @@ SUBOFQI (QI a, QI b, BI c)
>    return res;
>  }
> 
> +SEMOPS_INLINE BI
> +MUL2OFSI (SI a, SI b)
> +{
> +  DI tmp = MULDI (EXTSIDI(a), EXTSIDI(b));
> +  BI res = tmp < -0x80000000LL || tmp > 0x7fffffffLL;
> +  return res;
> +}
> +
> +SEMOPS_INLINE BI
> +MUL1OFSI (USI a, USI b)
> +{
> +  UDI tmp = MULDI (ZEXTSIDI(a), ZEXTSIDI(b));
> +  BI res = (tmp > 0xFFFFFFFFULL);
> +  return res;
> +}

What are these functions expected to return?  They seem to return 1 when 
the result would overflow 32-bits, but just to be sure.

Simon



More information about the Gdb-patches mailing list