aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDavid Edelsohn <dje@gcc.gnu.org>2001-12-02 01:06:18 -0500
committerDavid Edelsohn <dje@gcc.gnu.org>2001-12-02 01:06:18 -0500
commit931db8d24fc885494520d20af485c6cdd5f95f92 (patch)
tree13f6e5b7a9c1e333087b55722ae2d5a8794a6fe2 /gcc
parentc4d7a90e8a993fc58998b794df0d806781ddf133 (diff)
downloadgcc-931db8d24fc885494520d20af485c6cdd5f95f92.zip
gcc-931db8d24fc885494520d20af485c6cdd5f95f92.tar.gz
gcc-931db8d24fc885494520d20af485c6cdd5f95f92.tar.bz2
emit-rtl.c (gen_lowpart_common): Cast array element to HOST_WIDE_INT before shifting.
* emit-rtl.c (gen_lowpart_common): Cast array element to HOST_WIDE_INT before shifting. From-SVN: r47521
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/emit-rtl.c6
2 files changed, 10 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index df03675..6c8fc06 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2001-12-02 David Edelsohn <edelsohn@gnu.org>
+
+ * emit-rtl.c (gen_lowpart_common): Cast array element to HOST_WIDE_INT
+ before shifting.
+
2001-12-02 Neil Booth <neil@daikokuya.demon.co.uk>
* c-decl.c (duplicate_decls, push_parm_decl): Remove leading
@@ -434,7 +439,7 @@ Wed Nov 28 10:42:19 CET 2001 Jan Hubicka <jh@suse.cz>
* toplev.c: Update comment.
* doc/passes.texi: Update.
objc:
- * ojbc-act.c (LANG_HOOKS_TREE_INLINING_CANNOT_INLINE_TREE_FN,
+ * objc-act.c (LANG_HOOKS_TREE_INLINING_CANNOT_INLINE_TREE_FN,
LANG_HOOKS_TREE_INLINING_DISREGARD_INLINE_LIMITS,
LANG_HOOKS_TREE_INLINING_ANON_AGGR_TYPE_P): Override.
(objc_init): Update to use c_objc_common_init.
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index f3fda29..e7afacd 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -1061,8 +1061,10 @@ gen_lowpart_common (mode, x)
if (HOST_BITS_PER_WIDE_INT != 64)
abort ();
- return immed_double_const (i[3 * endian] | (i[1 + endian] << 32),
- i[2 - endian] | (i [3 - 3 * endian] << 32),
+ return immed_double_const (i[3 * endian]
+ | ((HOST_WIDE_INT) i[1 + endian] << 32),
+ i[2 - endian]
+ | ((HOST_WIDE_INT) i[3 - 3 * endian] << 32),
mode);
#endif
}