diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-29 13:45:47 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-29 13:45:47 +0000 |
commit | 4e948a9973e84d47119b259d7a111557f742a8c3 (patch) | |
tree | acaa4c3048af7730f61897ba56c531c20312e416 /gcc/double-int.h | |
parent | 0e8e9be326257a011ba3d19045a23ec3fb081ab4 (diff) | |
download | gcc-4e948a9973e84d47119b259d7a111557f742a8c3.tar.gz |
2010-07-28 Richard Guenther <rguenther@suse.de>
* double-int.h (double_int_and_not): New function.
* combine.c (try_combine): Use it.
* tree-vrp.c (simplify_bit_ops_using_ranges): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162681 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/double-int.h')
-rw-r--r-- | gcc/double-int.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/double-int.h b/gcc/double-int.h index 00ec4efdad1..b14693d4fbd 100644 --- a/gcc/double-int.h +++ b/gcc/double-int.h @@ -158,7 +158,7 @@ static inline double_int double_int_not (double_int a) { a.low = ~a.low; - a.high = ~ a.high; + a.high = ~a.high; return a; } @@ -182,6 +182,16 @@ double_int_and (double_int a, double_int b) return a; } +/* Returns A & ~B. */ + +static inline double_int +double_int_and_not (double_int a, double_int b) +{ + a.low &= ~b.low; + a.high &= ~b.high; + return a; +} + /* Returns A ^ B. */ static inline double_int |