summaryrefslogtreecommitdiff
path: root/gcc/rtl.h
diff options
context:
space:
mode:
authoraesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4>2010-05-01 17:52:02 +0000
committeraesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4>2010-05-01 17:52:02 +0000
commit3327418041ec57f6db06ba8ec7ea88616c2d7728 (patch)
tree04b921bafe9da0814bfd9d39ff3475fef41e5805 /gcc/rtl.h
parentbfe513a49f83aeaed190d83ba4497b85c1d8aaaf (diff)
downloadgcc-3327418041ec57f6db06ba8ec7ea88616c2d7728.tar.gz
* rtl.h (CONST_DOUBLE_P): Define.
(rtx_to_double_int): Declare. * emit-rtl.c (rtx_to_double_int): New function. * dwarf2out.c (insert_double): New function. (loc_descriptor, add_const_value_attribute): Clean up, use rtx_to_double_int and insert_double functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158963 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r--gcc/rtl.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h
index ccb3c1a044a..fe17ae7cba5 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -375,6 +375,10 @@ struct GTY(()) rtvec_def {
/* Predicate yielding nonzero iff X is an rtx for a constant integer. */
#define CONST_INT_P(X) (GET_CODE (X) == CONST_INT)
+/* Predicate yielding true iff X is an rtx for a double-int
+ or floating point constant. */
+#define CONST_DOUBLE_P(X) (GET_CODE (X) == CONST_DOUBLE)
+
/* Predicate yielding nonzero iff X is a label insn. */
#define LABEL_P(X) (GET_CODE (X) == CODE_LABEL)
@@ -1627,6 +1631,7 @@ extern void start_sequence (void);
extern void push_to_sequence (rtx);
extern void push_to_sequence2 (rtx, rtx);
extern void end_sequence (void);
+extern double_int rtx_to_double_int (const_rtx);
extern rtx immed_double_int_const (double_int, enum machine_mode);
extern rtx immed_double_const (HOST_WIDE_INT, HOST_WIDE_INT,
enum machine_mode);