diff options
author | Jim Wilson <wilson@redhat.com> | 2001-06-28 03:52:28 +0000 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 2001-06-27 20:52:28 -0700 |
commit | 09482e0de5ec72e969255e74e0fe9c873e3d6b14 (patch) | |
tree | 90eda0fe79c802ef295abd9e2d129795c52baf88 /gcc | |
parent | eb5593634bd2aaa59693e76bfa6aaca31b652d09 (diff) | |
download | gcc-09482e0de5ec72e969255e74e0fe9c873e3d6b14.zip gcc-09482e0de5ec72e969255e74e0fe9c873e3d6b14.tar.gz gcc-09482e0de5ec72e969255e74e0fe9c873e3d6b14.tar.bz2 |
Fix ia64-linux bootstrap failure.
* emit-rtl.c (gen_highpart): Call validize_mem.
From-SVN: r43627
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/emit-rtl.c | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3b00c8b..f97c728 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2001-06-27 Jim Wilson <wilson@redhat.com> + + * emit-rtl.c (gen_highpart): Call validize_mem. + 2001-06-27 Bruce Korb <bkorb@gnu.org> * fixinc/inclhack.def(hpux11_cpp_pow_inline): new, but real similar to diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index c4f5be3..6b3135a 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -1135,6 +1135,13 @@ gen_highpart (mode, x) result = simplify_gen_subreg (mode, x, GET_MODE (x), subreg_highpart_offset (mode, GET_MODE (x))); + + /* simplify_gen_subreg is not guaranteed to return a valid operand for + the target if we have a MEM. gen_highpart must return a valid operand, + emitting code if necessary to do so. */ + if (GET_CODE (result) == MEM) + result = validize_mem (result); + if (!result) abort (); return result; |