summaryrefslogtreecommitdiff
path: root/gcc/tree-ssanames.h
diff options
context:
space:
mode:
authormrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-04 21:29:11 +0000
committermrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>2013-11-04 21:29:11 +0000
commitaeb682a27a580c32813c316b911b59b851f6f34e (patch)
treecaef14d95e41d87b155a732aa16f18f483eea729 /gcc/tree-ssanames.h
parent8945e16bd0dc520c80b423cc0802c89ce551ff08 (diff)
parent8dd9f7ce09ba28909b069f5baa405ea4cc7b5c42 (diff)
downloadgcc-aeb682a27a580c32813c316b911b59b851f6f34e.tar.gz
Merge in trunk.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/wide-int@204366 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssanames.h')
-rw-r--r--gcc/tree-ssanames.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/gcc/tree-ssanames.h b/gcc/tree-ssanames.h
index 2c92d5772d7..cafcd7c482a 100644
--- a/gcc/tree-ssanames.h
+++ b/gcc/tree-ssanames.h
@@ -52,6 +52,8 @@ struct GTY (()) range_info_def {
widest_int min;
/* Maximum for value range. */
widest_int max;
+ /* Non-zero bits - bits not set are guaranteed to be always zero. */
+ widest_int nonzero_bits;
};
@@ -68,10 +70,12 @@ struct GTY (()) range_info_def {
enum value_range_type { VR_UNDEFINED, VR_RANGE, VR_ANTI_RANGE, VR_VARYING };
/* Sets the value range to SSA. */
-extern void set_range_info (tree ssa, widest_int min, widest_int max);
+extern void set_range_info (tree, widest_int, widest_int);
/* Gets the value range from SSA. */
-extern enum value_range_type get_range_info (tree name, widest_int *min,
- widest_int *max);
+extern enum value_range_type get_range_info (const_tree, widest_int *,
+ widest_int *);
+extern void set_nonzero_bits (tree, widest_int);
+extern widest_int get_nonzero_bits (const_tree);
extern void init_ssanames (struct function *, int);
extern void fini_ssanames (void);
extern void ssanames_print_statistics (void);