"Robin Dapp" <rdapp....@gmail.com> writes:
> diff --git a/gcc/machmode.h b/gcc/machmode.h
> index c31ec2f2ebc..b3307ad9342 100644
> --- a/gcc/machmode.h
> +++ b/gcc/machmode.h
> @@ -20,6 +20,7 @@ along with GCC; see the file COPYING3.  If not see
>  #ifndef HAVE_MACHINE_MODES
>  #define HAVE_MACHINE_MODES
>  
> +#include "coretypes.h"
>  typedef opt_mode<machine_mode> opt_machine_mode;
>  
>  extern CONST_MODE_SIZE poly_uint16 mode_size[NUM_MACHINE_MODES];

Why's the include needed?  .ccs ought to include coretypes.h directly
(and get machmode.h that way, since coretypes.h include machmode.h).

> @@ -905,15 +906,15 @@ decimal_float_mode_for_size (unsigned int size)
>      (mode_for_size (size, MODE_DECIMAL_FLOAT, 0));
>  }
>  
> -extern machine_mode smallest_mode_for_size (poly_uint64, enum mode_class);
> +extern opt_machine_mode smallest_mode_for_size (poly_uint64, enum 
> mode_class);
>  
>  /* Find the narrowest integer mode that contains at least SIZE bits.
>     Such a mode must exist.  */

The comment is no longer true.  Maybe:

/* Find the narrowest integer mode that contains at least SIZE bits,
   if such a mode exists.  */

Similarly for smallest_mode_for_size.

Otherwise it looks good.  Thanks for doing this.

When I had a quick look before sending my previous message, it seemed like
quite a few callers do have natural error paths for the case where no mode
exists.  But I agree it makes sense to do that separately.  I can follow
up with a patch for that.

Richard

Reply via email to