diff options
author | Kaz Kojima <kkojima@gcc.gnu.org> | 2004-07-01 14:41:40 +0000 |
---|---|---|
committer | Kaz Kojima <kkojima@gcc.gnu.org> | 2004-07-01 14:41:40 +0000 |
commit | 096f6ffff6e8dd22089d6b05d58e9d7cd11e20e2 (patch) | |
tree | 9edb6deeea5789408f669cb9b8c2929da0ad2142 | |
parent | bdc4eadb9eba888c87df917d4447cf4f91d61ce2 (diff) |
* config/sh/sh.c (sh_va_arg): Initinalize lab_over.sh-elf-3_5-branch
* 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;
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/sh-elf-3_5-branch@83984 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog.sh-elf | 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.sh-elf b/gcc/ChangeLog.sh-elf index 66dd372f0a5..4cc478b6aa3 100644 --- a/gcc/ChangeLog.sh-elf +++ b/gcc/ChangeLog.sh-elf @@ -1,3 +1,13 @@ +2004-06-30 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-06-29 J"orn Rennecke <joern.rennecke@superh.com> Fix gcc.dg/builtin-apply2.c failures: diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 3f5889d2d16..92d7f915dd9 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 0d6d1c6570c..7d5628689bd 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) \ @@ -3369,7 +3369,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 d8ea00ca77a..d96227bc938 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -4048,7 +4048,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]); @@ -7151,7 +7152,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 (); @@ -7395,7 +7396,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)); @@ -9238,7 +9239,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. */ |