[PATCH]: Introduce HOST_WIDE_INT_0{,U}
Uros Bizjak
ubizjak@gmail.com
Wed Jul 20 21:16:00 GMT 2016
As suggested by Jakub.
2016-07-20 Uros Bizjak <ubizjak@gmail.com>
* hwint.h (HOST_WIDE_INT_0): New define.
(HOST_WIDE_INT_0U): Ditto.
* double-int.c: Use HOST_WIDE_INT_0 instead of (HOST_WIDE_INT) 0.
* dse.c: Use HOST_WIDE_INT_0U instead of (unsigned HOST_WIDE_INT) 0.
* simplify-rtx.c: Ditto.
* tree-object-size.c: Ditto.
Bootstrapped and regression tested on x86_64-linux-gnu. In addition, I
have checked that .o files didn't differ.
OK for mainline?
Uros.
-------------- next part --------------
Index: double-int.c
===================================================================
--- double-int.c (revision 238538)
+++ double-int.c (working copy)
@@ -557,7 +557,7 @@ div_and_round_double (unsigned code, int uns,
case CEIL_MOD_EXPR: /* round toward positive infinity */
if (!quo_neg && (*lrem != 0 || *hrem != 0)) /* ratio > 0 && rem != 0 */
{
- add_double (*lquo, *hquo, HOST_WIDE_INT_1, (HOST_WIDE_INT) 0,
+ add_double (*lquo, *hquo, HOST_WIDE_INT_1, HOST_WIDE_INT_0,
lquo, hquo);
}
else
@@ -593,7 +593,7 @@ div_and_round_double (unsigned code, int uns,
HOST_WIDE_INT_M1, HOST_WIDE_INT_M1, lquo, hquo);
else
/* quo = quo + 1; */
- add_double (*lquo, *hquo, HOST_WIDE_INT_1, (HOST_WIDE_INT) 0,
+ add_double (*lquo, *hquo, HOST_WIDE_INT_1, HOST_WIDE_INT_0,
lquo, hquo);
}
else
Index: dse.c
===================================================================
--- dse.c (revision 238538)
+++ dse.c (working copy)
@@ -1217,7 +1217,7 @@ set_all_positions_unneeded (store_info *s_info)
s_info->positions_needed.large.count = end;
}
else
- s_info->positions_needed.small_bitmask = (unsigned HOST_WIDE_INT) 0;
+ s_info->positions_needed.small_bitmask = HOST_WIDE_INT_0U;
}
/* Return TRUE if any bytes from S_INFO store are needed. */
@@ -1229,8 +1229,7 @@ any_positions_needed_p (store_info *s_info)
return (s_info->positions_needed.large.count
< s_info->end - s_info->begin);
else
- return (s_info->positions_needed.small_bitmask
- != (unsigned HOST_WIDE_INT) 0);
+ return (s_info->positions_needed.small_bitmask != HOST_WIDE_INT_0U);
}
/* Return TRUE if all bytes START through START+WIDTH-1 from S_INFO
Index: hwint.h
===================================================================
--- hwint.h (revision 238538)
+++ hwint.h (working copy)
@@ -63,6 +63,8 @@ extern char sizeof_long_long_must_be_8[sizeof (lon
#endif
#define HOST_WIDE_INT_UC(X) HOST_WIDE_INT_C (X ## U)
+#define HOST_WIDE_INT_0 HOST_WIDE_INT_C (0)
+#define HOST_WIDE_INT_0U HOST_WIDE_INT_UC (0)
#define HOST_WIDE_INT_1 HOST_WIDE_INT_C (1)
#define HOST_WIDE_INT_1U HOST_WIDE_INT_UC (1)
#define HOST_WIDE_INT_M1 HOST_WIDE_INT_C (-1)
Index: simplify-rtx.c
===================================================================
--- simplify-rtx.c (revision 238538)
+++ simplify-rtx.c (working copy)
@@ -40,7 +40,7 @@ along with GCC; see the file COPYING3. If not see
occasionally need to sign extend from low to high as if low were a
signed wide int. */
#define HWI_SIGN_EXTEND(low) \
- ((((HOST_WIDE_INT) low) < 0) ? HOST_WIDE_INT_M1 : ((HOST_WIDE_INT) 0))
+ ((((HOST_WIDE_INT) low) < 0) ? HOST_WIDE_INT_M1 : HOST_WIDE_INT_0)
static rtx neg_const_int (machine_mode, const_rtx);
static bool plus_minus_operand_p (const_rtx);
Index: tree-object-size.c
===================================================================
--- tree-object-size.c (revision 238538)
+++ tree-object-size.c (working copy)
@@ -738,7 +738,7 @@ merge_object_sizes (struct object_size_info *osi,
orig_bytes = object_sizes[object_size_type][SSA_NAME_VERSION (orig)];
if (orig_bytes != unknown[object_size_type])
orig_bytes = (offset > orig_bytes)
- ? (unsigned HOST_WIDE_INT) 0 : orig_bytes - offset;
+ ? HOST_WIDE_INT_0U : orig_bytes - offset;
if ((object_size_type & 2) == 0)
{
More information about the Gcc-patches
mailing list