mirror of git://gcc.gnu.org/git/gcc.git
m32c.h (CLASS_MAX_NREGS): Remove macro.
* config/m32c/m32c.h (CLASS_MAX_NREGS): Remove macro. * config/m32c/m32c-protos.h (m32c_class_max_nregs): Remove. * config/m32c/m32c.c (m32c_class_max_nregs): Make static. Change regclass argument type to reg_class_t. Change 'max' and 'v' vars and return types to unsigned char. Use reg_class_contents instead of class_contents. (TARGET_CLASS_MAX_NREGS): Define. From-SVN: r177971
This commit is contained in:
parent
8b46e440e3
commit
c4831cff11
|
@ -1,3 +1,13 @@
|
||||||
|
2011-08-22 Anatoly Sokolov <aesok@post.ru>
|
||||||
|
|
||||||
|
* config/m32c/m32c.h (CLASS_MAX_NREGS): Remove macro.
|
||||||
|
* config/m32c/m32c-protos.h (m32c_class_max_nregs): Remove.
|
||||||
|
* config/m32c/m32c.c (m32c_class_max_nregs): Make static. Change
|
||||||
|
regclass argument type to reg_class_t. Change 'max' and 'v' vars
|
||||||
|
and return types to unsigned char. Use reg_class_contents instead
|
||||||
|
of class_contents.
|
||||||
|
(TARGET_CLASS_MAX_NREGS): Define.
|
||||||
|
|
||||||
2011-08-22 Bernd Schmidt <bernds@codesourcery.com>
|
2011-08-22 Bernd Schmidt <bernds@codesourcery.com>
|
||||||
|
|
||||||
* config/c6x/c6x.md (indirect_jump_shadow): Tweak representation
|
* config/c6x/c6x.md (indirect_jump_shadow): Tweak representation
|
||||||
|
|
|
@ -44,7 +44,6 @@ int m32c_trampoline_size (void);
|
||||||
#ifdef RTX_CODE
|
#ifdef RTX_CODE
|
||||||
|
|
||||||
int m32c_cannot_change_mode_class (enum machine_mode, enum machine_mode, int);
|
int m32c_cannot_change_mode_class (enum machine_mode, enum machine_mode, int);
|
||||||
int m32c_class_max_nregs (int, enum machine_mode);
|
|
||||||
rtx m32c_eh_return_stackadj_rtx (void);
|
rtx m32c_eh_return_stackadj_rtx (void);
|
||||||
void m32c_emit_eh_epilogue (rtx);
|
void m32c_emit_eh_epilogue (rtx);
|
||||||
int m32c_expand_cmpstr (rtx *);
|
int m32c_expand_cmpstr (rtx *);
|
||||||
|
|
|
@ -859,18 +859,23 @@ m32c_class_likely_spilled_p (reg_class_t regclass)
|
||||||
return (reg_class_size[(int) regclass] == 1);
|
return (reg_class_size[(int) regclass] == 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Implements CLASS_MAX_NREGS. We calculate this according to its
|
/* Implements TARGET_CLASS_MAX_NREGS. We calculate this according to its
|
||||||
documented meaning, to avoid potential inconsistencies with actual
|
documented meaning, to avoid potential inconsistencies with actual
|
||||||
class definitions. */
|
class definitions. */
|
||||||
int
|
|
||||||
m32c_class_max_nregs (int regclass, enum machine_mode mode)
|
#undef TARGET_CLASS_MAX_NREGS
|
||||||
|
#define TARGET_CLASS_MAX_NREGS m32c_class_max_nregs
|
||||||
|
|
||||||
|
static unsigned char
|
||||||
|
m32c_class_max_nregs (reg_class_t regclass, enum machine_mode mode)
|
||||||
{
|
{
|
||||||
int rn, max = 0;
|
int rn;
|
||||||
|
unsigned char max = 0;
|
||||||
|
|
||||||
for (rn = 0; rn < FIRST_PSEUDO_REGISTER; rn++)
|
for (rn = 0; rn < FIRST_PSEUDO_REGISTER; rn++)
|
||||||
if (class_contents[regclass][0] & (1 << rn))
|
if (TEST_HARD_REG_BIT (reg_class_contents[(int) regclass], rn))
|
||||||
{
|
{
|
||||||
int n = m32c_hard_regno_nregs (rn, mode);
|
unsigned char n = m32c_hard_regno_nregs (rn, mode);
|
||||||
if (max < n)
|
if (max < n)
|
||||||
max = n;
|
max = n;
|
||||||
}
|
}
|
||||||
|
|
|
@ -425,8 +425,6 @@ enum reg_class
|
||||||
|
|
||||||
#define TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P hook_bool_mode_true
|
#define TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P hook_bool_mode_true
|
||||||
|
|
||||||
#define CLASS_MAX_NREGS(C,M) m32c_class_max_nregs (C, M)
|
|
||||||
|
|
||||||
#define CANNOT_CHANGE_MODE_CLASS(F,T,C) m32c_cannot_change_mode_class(F,T,C)
|
#define CANNOT_CHANGE_MODE_CLASS(F,T,C) m32c_cannot_change_mode_class(F,T,C)
|
||||||
|
|
||||||
#define CONST_OK_FOR_CONSTRAINT_P(VALUE,C,STR) \
|
#define CONST_OK_FOR_CONSTRAINT_P(VALUE,C,STR) \
|
||||||
|
|
Loading…
Reference in New Issue