Problem with reloading in a new backend...

Stelian Pop stelian@popies.net
Thu Apr 10 19:41:00 GMT 2008


Le jeudi 10 avril 2008 à 15:30 -0400, DJ Delorie a écrit :
> > 	        (call (mem:QI (match_operand:QI 1 "register_operand" "z"))
> 
> Are you sure your "z" constraint only matches even numbered hard
> registers?

Well, I think so:

	enum reg_class
	{
	  NO_REGS,
	  BP_REGS,
	  STACK_REGS,
	  EIGHT_REGS,
	  EVEN_REGS,
	  GENERAL_REGS,
	  ALL_REGS,
	  LIM_REG_CLASSES
	};

	#define N_REG_CLASSES ((int) LIM_REG_CLASSES)

	#define REG_CLASS_CONTENTS                      \
	{                                               \
	  { 0x00000000 },                               \
	  { 0x00000001 },                               \
	  { 0x80000000 },                               \
	  { 0x000000FF },                               \
	  { 0x55555555 },                               \
	  { 0x7FFFFFFE },                               \
	  { (1LL << FIRST_PSEUDO_REGISTER) - 1 }        \
	}

	...

	(define_register_constraint "z" "EVEN_REGS"
	  "Even registers (r0,r2,r4, @dots{} r30)")


-- 
Stelian Pop <stelian@popies.net>



More information about the Gcc mailing list