Hi All, In AArch64 back-end, BASE_REG_CLASS is defined to be POINTER_REGS. Shouldn’t this be GENERAL_REGS?
Attached RFC patch makes it GENERAL_REGS. Regression tested for aarch64-none-linux-gnu on qemu-aarch64 with now new regression. Is this OK ? Thanks, Kugan gcc/ 2014-05-15 Kugan Vivekanandarajah <kug...@linaro.org> * config/aarch64/aarch64.h (BASE_REG_CLASS) : define BASE_REG_CLASS to be GENERAL_REGS.
diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h index 7962aa4..e55cd94 100644 --- a/gcc/config/aarch64/aarch64.h +++ b/gcc/config/aarch64/aarch64.h @@ -448,7 +448,7 @@ enum reg_class #define REGNO_REG_CLASS(REGNO) aarch64_regno_regclass (REGNO) #define INDEX_REG_CLASS CORE_REGS -#define BASE_REG_CLASS POINTER_REGS +#define BASE_REG_CLASS GENERAL_REGS /* Register pairs used to eliminate unneeded registers that point into the stack frame. */