aboutsummaryrefslogtreecommitdiff
path: root/gcc/hwint.h
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2014-12-16 20:59:56 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2014-12-16 19:59:56 +0000
commit931977d9191b542c356d2dfa3258c8d09a6b8498 (patch)
tree7517b4a73e11c8c28d9049721a6ee6d367b9c7ba /gcc/hwint.h
parent203c7ebffdd7042d9b08d303594eaeb9887ff503 (diff)
downloadgcc-931977d9191b542c356d2dfa3258c8d09a6b8498.zip
gcc-931977d9191b542c356d2dfa3258c8d09a6b8498.tar.gz
gcc-931977d9191b542c356d2dfa3258c8d09a6b8498.tar.bz2
hwint.c (abs_hwi, absu_hwi): Move to ...
* hwint.c (abs_hwi, absu_hwi): Move to ... * hwint.h (abs_hwi, absu_hwi): ... here; make inline. From-SVN: r218791
Diffstat (limited to 'gcc/hwint.h')
-rw-r--r--gcc/hwint.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/hwint.h b/gcc/hwint.h
index fd961fd..8e1c8f5 100644
--- a/gcc/hwint.h
+++ b/gcc/hwint.h
@@ -264,4 +264,21 @@ zext_hwi (unsigned HOST_WIDE_INT src, unsigned int prec)
}
}
+/* Compute the absolute value of X. */
+
+inline HOST_WIDE_INT
+abs_hwi (HOST_WIDE_INT x)
+{
+ gcc_checking_assert (x != HOST_WIDE_INT_MIN);
+ return x >= 0 ? x : -x;
+}
+
+/* Compute the absolute value of X as an unsigned type. */
+
+inline unsigned HOST_WIDE_INT
+absu_hwi (HOST_WIDE_INT x)
+{
+ return x >= 0 ? (unsigned HOST_WIDE_INT)x : -(unsigned HOST_WIDE_INT)x;
+}
+
#endif /* ! GCC_HWINT_H */