From 78a68e851a2f6f9d00367cd38eeedf670bb80f01 Mon Sep 17 00:00:00 2001 From: Andrew Hsieh Date: Tue, 5 Mar 2013 16:24:55 +0800 Subject: Fixed GCC 4.6/4.7 ICE gen_thumb_movhi_clobber at config/arm/arm.md:5832 See issue https://code.google.com/p/android/issues/detail?id=52732, and fix http://gcc.gnu.org/ml/gcc-patches/2010-12/msg00732.html Change-Id: If4759a637e5fb6f9c351c11b79d7f9f682ca2ab2 --- gcc-4.6/gcc/config/arm/arm.h | 1 + gcc-4.6/gcc/config/arm/arm.md | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'gcc-4.6') diff --git a/gcc-4.6/gcc/config/arm/arm.h b/gcc-4.6/gcc/config/arm/arm.h index c4f9de0c1..6245bb5bd 100644 --- a/gcc-4.6/gcc/config/arm/arm.h +++ b/gcc-4.6/gcc/config/arm/arm.h @@ -1214,6 +1214,7 @@ enum reg_class (TARGET_32BIT ? (CLASS) : \ ((CLASS) == GENERAL_REGS || (CLASS) == HI_REGS \ || (CLASS) == NO_REGS || (CLASS) == STACK_REG \ + || (CLASS) == CORE_REGS \ ? LO_REGS : (CLASS))) /* Must leave BASE_REGS reloads alone */ diff --git a/gcc-4.6/gcc/config/arm/arm.md b/gcc-4.6/gcc/config/arm/arm.md index df2e63949..cc73aa2f3 100644 --- a/gcc-4.6/gcc/config/arm/arm.md +++ b/gcc-4.6/gcc/config/arm/arm.md @@ -5852,7 +5852,7 @@ (define_expand "reload_inhi" [(parallel [(match_operand:HI 0 "s_register_operand" "=r") (match_operand:HI 1 "arm_reload_memory_operand" "o") - (match_operand:DI 2 "s_register_operand" "=&r")])] + (match_operand:DI 2 "s_register_operand" "=&l")])] "TARGET_EITHER" " if (TARGET_ARM) -- cgit v1.2.3