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 <[email protected]>
* 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. */