diff options
author | davem <davem@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-23 00:33:44 +0000 |
---|---|---|
committer | davem <davem@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-23 00:33:44 +0000 |
commit | 8347c5244b2c42ba47716e42b04275f63b73a23b (patch) | |
tree | 0aa351a7e45ad3658288d88b8bca8122c6002626 | |
parent | f2322544c5880403400fa5d479b637fc10e17d84 (diff) | |
download | gcc-8347c5244b2c42ba47716e42b04275f63b73a23b.tar.gz |
* sched-vis.c (print_value): Use CONST_DOUBLE_LOW and
CONST_DOUBLE_HIGH.
* config/sparc/sparc.c (sparc_rtx_costs): Likewise, and
fix check on CONST_DOUBLE mode. It should be VOIDmode
when it is representing an integer.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98596 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/config/sparc/sparc.c | 18 | ||||
-rw-r--r-- | gcc/sched-vis.c | 2 |
3 files changed, 18 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f29d6a2fa1c..65268c14cca 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2005-04-22 David S. Miller <davem@davemloft.net> + + * sched-vis.c (print_value): Use CONST_DOUBLE_LOW and + CONST_DOUBLE_HIGH. + * config/sparc/sparc.c (sparc_rtx_costs): Likewise, and + fix check on CONST_DOUBLE mode. It should be VOIDmode + when it is representing an integer. + 2005-04-22 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (gimplify_va_arg_expr): Reword comments to avoid diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c index 8e2893d4cd3..1349cc79432 100644 --- a/gcc/config/sparc/sparc.c +++ b/gcc/config/sparc/sparc.c @@ -7897,12 +7897,12 @@ sparc_rtx_costs (rtx x, int code, int outer_code, int *total) return true; case CONST_DOUBLE: - if (GET_MODE (x) == DImode - && ((XINT (x, 3) == 0 - && (unsigned HOST_WIDE_INT) XINT (x, 2) < 0x1000) - || (XINT (x, 3) == -1 - && XINT (x, 2) < 0 - && XINT (x, 2) >= -0x1000))) + if (GET_MODE (x) == VOIDmode + && ((CONST_DOUBLE_HIGH (x) == 0 + && CONST_DOUBLE_LOW (x) < 0x1000) + || (CONST_DOUBLE_HIGH (x) == -1 + && CONST_DOUBLE_LOW (x) < 0 + && CONST_DOUBLE_LOW (x) >= -0x1000))) *total = 0; else *total = 8; @@ -7960,11 +7960,11 @@ sparc_rtx_costs (rtx x, int code, int outer_code, int *total) nbits++; } else if (GET_CODE (XEXP (x, 1)) == CONST_DOUBLE - && GET_MODE (XEXP (x, 1)) == DImode) + && GET_MODE (XEXP (x, 1)) == VOIDmode) { rtx x1 = XEXP (x, 1); - unsigned HOST_WIDE_INT value1 = XINT (x1, 2); - unsigned HOST_WIDE_INT value2 = XINT (x1, 3); + unsigned HOST_WIDE_INT value1 = CONST_DOUBLE_LOW (x1); + unsigned HOST_WIDE_INT value2 = CONST_DOUBLE_HIGH (x1); for (nbits = 0; value1 != 0; value1 &= value1 - 1) nbits++; diff --git a/gcc/sched-vis.c b/gcc/sched-vis.c index aa228317ba0..8920fb6a320 100644 --- a/gcc/sched-vis.c +++ b/gcc/sched-vis.c @@ -435,7 +435,7 @@ print_value (char *buf, rtx x, int verbose) if (FLOAT_MODE_P (GET_MODE (x))) real_to_decimal (t, CONST_DOUBLE_REAL_VALUE (x), sizeof (t), 0, 1); else - sprintf (t, "<0x%lx,0x%lx>", (long) XWINT (x, 2), (long) XWINT (x, 3)); + sprintf (t, "<0x%lx,0x%lx>", (long) CONST_DOUBLE_LOW (x), (long) CONST_DOUBLE_HIGH (x)); cur = safe_concat (buf, cur, t); break; case CONST_STRING: |