diff options
author | Georg-Johann Lay <avr@gjlay.de> | 2012-04-24 15:21:29 +0000 |
---|---|---|
committer | Georg-Johann Lay <gjl@gcc.gnu.org> | 2012-04-24 15:21:29 +0000 |
commit | 59d9ade4aed3ea43d50dddd3bdc5fae06d3d40d7 (patch) | |
tree | e7cad6c122b3a54a49086f0af038c1fa8aa3f075 /gcc | |
parent | 929eeacd4cb79f4fdea7d79ec7ad14da8e266d10 (diff) | |
download | gcc-59d9ade4aed3ea43d50dddd3bdc5fae06d3d40d7.zip gcc-59d9ade4aed3ea43d50dddd3bdc5fae06d3d40d7.tar.gz gcc-59d9ade4aed3ea43d50dddd3bdc5fae06d3d40d7.tar.bz2 |
re PR target/53065 (ICE replace_reg_with_saved_mem, at caller-save.c:1125)
PR target/53065
* config/avr/avr.h (HARD_REGNO_CALL_PART_CLOBBERED): New hook define.
From-SVN: r186768
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/avr/avr.h | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 27a67a5..9d55ef0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2012-04-24 Georg-Johann Lay <avr@gjlay.de> + + PR target/53065 + * config/avr/avr.h (HARD_REGNO_CALL_PART_CLOBBERED): New hook define. + 2012-04-24 Richard Guenther <rguenther@suse.de> PR tree-optimization/53085 diff --git a/gcc/config/avr/avr.h b/gcc/config/avr/avr.h index bd5241c..591e21d 100644 --- a/gcc/config/avr/avr.h +++ b/gcc/config/avr/avr.h @@ -394,6 +394,11 @@ enum reg_class { #define REGNO_OK_FOR_INDEX_P(NUM) 0 +#define HARD_REGNO_CALL_PART_CLOBBERED(REGNO, MODE) \ + (((REGNO) < 18 && (REGNO) + GET_MODE_SIZE (MODE) > 18) \ + || ((REGNO) < REG_Y && (REGNO) + GET_MODE_SIZE (MODE) > REG_Y) \ + || ((REGNO) < REG_Z && (REGNO) + GET_MODE_SIZE (MODE) > REG_Z)) + #define TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P hook_bool_mode_true #define STACK_PUSH_CODE POST_DEC |