aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@gcc.gnu.org>2004-07-01 14:41:40 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2004-07-01 14:41:40 +0000
commit096f6ffff6e8dd22089d6b05d58e9d7cd11e20e2 (patch)
tree9edb6deeea5789408f669cb9b8c2929da0ad2142
parentbdc4eadb9eba888c87df917d4447cf4f91d61ce2 (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-elf10
-rw-r--r--gcc/config/sh/sh.c2
-rw-r--r--gcc/config/sh/sh.h4
-rw-r--r--gcc/config/sh/sh.md9
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. */