aboutsummaryrefslogtreecommitdiff
path: root/gcc/double-int.h
diff options
context:
space:
mode:
authorAnatoly Sokolov <aesok@post.ru>2010-05-25 23:48:40 +0400
committerAnatoly Sokolov <aesok@gcc.gnu.org>2010-05-25 23:48:40 +0400
commite233a3b258440a4bbfc0756f1a6cc6e68d59132b (patch)
treeb56860024c6450400eb54a4ddab72b811df1bca9 /gcc/double-int.h
parentbc492e47c89a4f5c21bcbab7adcc2c897d48a761 (diff)
downloadgcc-e233a3b258440a4bbfc0756f1a6cc6e68d59132b.zip
gcc-e233a3b258440a4bbfc0756f1a6cc6e68d59132b.tar.gz
gcc-e233a3b258440a4bbfc0756f1a6cc6e68d59132b.tar.bz2
double-int.h (double_int_and): New.
* double-int.h (double_int_and): New. * combine.c (try_combine): Clean up, use double_int_* and immed_double_int_const functions. From-SVN: r159842
Diffstat (limited to 'gcc/double-int.h')
-rw-r--r--gcc/double-int.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/double-int.h b/gcc/double-int.h
index 370f619..c13b112 100644
--- a/gcc/double-int.h
+++ b/gcc/double-int.h
@@ -147,6 +147,16 @@ double_int_ior (double_int a, double_int b)
return a;
}
+/* Returns A & B. */
+
+static inline double_int
+double_int_and (double_int a, double_int b)
+{
+ a.low &= b.low;
+ a.high &= b.high;
+ return a;
+}
+
/* Shift operations. */
double_int double_int_lshift (double_int, HOST_WIDE_INT, unsigned int, bool);
double_int double_int_rshift (double_int, HOST_WIDE_INT, unsigned int, bool);