]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR target/53065 (ICE replace_reg_with_saved_mem, at caller-save.c:1125)
authorGeorg-Johann Lay <avr@gjlay.de>
Tue, 24 Apr 2012 15:21:29 +0000 (15:21 +0000)
committerGeorg-Johann Lay <gjl@gcc.gnu.org>
Tue, 24 Apr 2012 15:21:29 +0000 (15:21 +0000)
PR target/53065
* config/avr/avr.h (HARD_REGNO_CALL_PART_CLOBBERED): New hook define.

From-SVN: r186768

gcc/ChangeLog
gcc/config/avr/avr.h

index 27a67a50d91a395365aa162b4665ddb6b59aff01..9d55ef06477fd91e1a2ead12dc75bff02f7c26b1 100644 (file)
@@ -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
index bd5241c9fad51659ca7e0251e0f958a5f714edb6..591e21dd5b904fa5368ac9b45c9f19d017884353 100644 (file)
@@ -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