[PATCH: PR target/41705] Enable if conversion for thumb1 by new HAVE_conditional_execution definition

Ian Lance Taylor iant@google.com
Thu Oct 22 05:29:00 GMT 2009


Carrot Wei <carrot@google.com> writes:

> +bool default_have_conditional_execution (void)
> +{

Line break after "bool".


> +/* Only thumb1 can't support conditional execution, so return true if
> +   the target is not thumb1.  */
> +bool
> +arm_have_conditional_execution (void)
> +{
> +  return !TARGET_THUMB1;
> +}
> +

Make this function static.  Add a static declaration at the top of the
file near the other static declarations.  Define is higher in the
file, perhaps around the cost functions.


> Index: config/arm/arm-protos.h
> ===================================================================
> --- config/arm/arm-protos.h     (revision 152888)
> +++ config/arm/arm-protos.h     (working copy)
> @@ -41,7 +41,8 @@ extern HOST_WIDE_INT thumb_compute_initi
>                                                                unsigned int);
>  extern unsigned int arm_dbx_register_number (unsigned int);
>  extern void arm_output_fn_unwind (FILE *, bool);
> -
> +extern bool arm_have_conditional_execution (void);

Do not declare this here.


> @@ -146,7 +147,8 @@ extern const char *vfp_output_fstmd (rtx
>  extern void arm_set_return_address (rtx, rtx);
>  extern int arm_eliminable_register (rtx);
>  extern const char *arm_output_shift(rtx *, int);
> -
> +extern bool removable_cmp_0 (rtx cmp_op);
> +extern const char *emit_branch_after_movs (rtx *operands);
>  extern bool arm_output_addr_const_extra (FILE *, rtx);

This seems like an unrelated change which should not be in this patch.


Please send a new patch.  Please also test the new patch on x86 or
x86_64 GNU/Linux.

I would like to hear if the ARM maintainers have any comments.

Thanks.

Ian



More information about the Gcc-patches mailing list