diff options
author | Kaz Kojima <kkojima@gcc.gnu.org> | 2004-07-09 00:47:47 +0000 |
---|---|---|
committer | Kaz Kojima <kkojima@gcc.gnu.org> | 2004-07-09 00:47:47 +0000 |
commit | 45dc67b726b159bfc8740f442025ef4b6b619836 (patch) | |
tree | b2173c82f257cc08e888fd16c4ea5dd1c096fef4 /gcc | |
parent | 9d6bb56678d647dca2e971c5ca11f8446fab70d7 (diff) | |
download | gcc-45dc67b726b159bfc8740f442025ef4b6b619836.zip gcc-45dc67b726b159bfc8740f442025ef4b6b619836.tar.gz gcc-45dc67b726b159bfc8740f442025ef4b6b619836.tar.bz2 |
sh.c (sh_va_arg): Initinalize lab_over.
* config/sh/sh.c (sh_va_arg): Initinalize lab_over.
* config/sh/sh.h (CONST_OK_FOR_J16): Use parentheses.
(MODE_AFTER): Add cast appropriately.
* config/sh/sh.md (movdi splitter): Likewise.
(casesi_worker_2): Add const qualifier appropriately.
(eh_return): Remove unused variable.
(insv): Initialize v;
From-SVN: r84337
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/config/sh/sh.c | 2 | ||||
-rw-r--r-- | gcc/config/sh/sh.h | 4 | ||||
-rw-r--r-- | gcc/config/sh/sh.md | 9 |
4 files changed, 18 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b6f4818..20ac905 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2004-07-08 Kaz Kojima <kkojima@gcc.gnu.org> + + * config/sh/sh.c (sh_va_arg): Initinalize lab_over. + * config/sh/sh.h (CONST_OK_FOR_J16): Use parentheses. + (MODE_AFTER): Add cast appropriately. + * config/sh/sh.md (movdi splitter): Likewise. + (casesi_worker_2): Add const qualifier appropriately. + (eh_return): Remove unused variable. + (insv): Initialize v; + 2004-07-08 Richard Henderson <rth@redhat.com> * config/mmix/mmix-protos.h (mmix_expand_builtin_va_arg): Remove. diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index d6cf8c3..ef5df6b 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -6295,7 +6295,7 @@ sh_va_arg (tree valist, tree type) rtx addr_rtx, r; rtx result_ptr, result = NULL_RTX; int pass_by_ref = MUST_PASS_IN_STACK (TYPE_MODE (type), type); - rtx lab_over; + rtx lab_over = NULL_RTX; size = int_size_in_bytes (type); rsize = (size + UNITS_PER_WORD - 1) & -UNITS_PER_WORD; diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index c9f411a..3c1e94c 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -1533,7 +1533,7 @@ extern enum reg_class reg_class_from_letter[]; : 0) #define CONST_OK_FOR_J16(VALUE) \ - (HOST_BITS_PER_WIDE_INT >= 64 && (VALUE) == (HOST_WIDE_INT) 0xffffffff \ + ((HOST_BITS_PER_WIDE_INT >= 64 && (VALUE) == (HOST_WIDE_INT) 0xffffffff) \ || (HOST_BITS_PER_WIDE_INT >= 64 && (VALUE) == (HOST_WIDE_INT) -1 << 32)) #define CONST_OK_FOR_J(VALUE, STR) \ ((STR)[1] == '1' && (STR)[2] == '6' ? CONST_OK_FOR_J16 (VALUE) \ @@ -3365,7 +3365,7 @@ extern int rtx_equal_function_value_matters; (TARGET_HITACHI \ && recog_memoized (INSN) >= 0 \ && get_attr_fp_set (INSN) != FP_SET_NONE \ - ? get_attr_fp_set (INSN) \ + ? (int) get_attr_fp_set (INSN) \ : (MODE)) #define MODE_PRIORITY_TO_MODE(ENTITY, N) \ diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index 531db46..e901392 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -4068,7 +4068,8 @@ } /* Try movi / mshflo.l */ val2 = (HOST_WIDE_INT) val >> 32; - if (val2 == trunc_int_for_mode (val, SImode)) + if (val2 == ((unsigned HOST_WIDE_INT) + trunc_int_for_mode (val, SImode))) { operands[1] = gen_mshflo_l_di (operands[0], operands[0], operands[0]); @@ -7171,7 +7172,7 @@ mov.l\\t1f,r0\\n\\ "* { rtx diff_vec = PATTERN (next_real_insn (operands[2])); - char *load; + const char *load; if (GET_CODE (diff_vec) != ADDR_DIFF_VEC) abort (); @@ -7415,7 +7416,7 @@ mov.l\\t1f,r0\\n\\ [(use (match_operand 0 "register_operand" ""))] "" { - rtx tmp, ra = operands[0]; + rtx ra = operands[0]; if (TARGET_SHMEDIA64) emit_insn (gen_eh_set_ra_di (ra)); @@ -9258,7 +9259,7 @@ mov.l\\t1f,r0\\n\\ " { rtx addr_target, orig_address, shift_reg, qi_val; - HOST_WIDE_INT bitsize, size, v; + HOST_WIDE_INT bitsize, size, v = 0; rtx x = operands[3]; /* ??? expmed doesn't care for non-register predicates. */ |