diff options
| author | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-05 00:12:40 +0000 |
|---|---|---|
| committer | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-05 00:12:40 +0000 |
| commit | 12726d6a13523bdd37fbdfaabb85bebb19971568 (patch) | |
| tree | 8becb52cea0cae1f64a564acd78e9dbc76b4906a | |
| parent | 5b2bdd6ec59fbadcc207d80d95d2ec5f868becea (diff) | |
| download | ppe42-gcc-12726d6a13523bdd37fbdfaabb85bebb19971568.tar.gz ppe42-gcc-12726d6a13523bdd37fbdfaabb85bebb19971568.zip | |
* expr.c (convert_modes): Check for legal hard register.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63813 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/expr.c | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7b0adc10b0c..07a7c49ecef 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2003-03-04 Steve Ellcey <sje@cup.hp.com> + + * expr.c (convert_modes): Check for legal hard register. + 2003-03-04 Tom Tromey <tromey@redhat.com> * doc/sourcebuild.texi (Front End Directory): Document tags. diff --git a/gcc/expr.c b/gcc/expr.c index 39940cb609d..c0119af0f3f 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -1406,6 +1406,8 @@ convert_modes (mode, oldmode, x, unsignedp) && ((GET_CODE (x) == MEM && ! MEM_VOLATILE_P (x) && direct_load[(int) mode]) || (GET_CODE (x) == REG + && (! HARD_REGISTER_P (x) + || HARD_REGNO_MODE_OK (REGNO (x), mode)) && TRULY_NOOP_TRUNCATION (GET_MODE_BITSIZE (mode), GET_MODE_BITSIZE (GET_MODE (x))))))))) { |

