define_memory_constraint and REG_OK_STRICT
Mohamed Shafi
shafitvm@gmail.com
Tue Sep 29 14:48:00 GMT 2009
Hello all,
I am doing a port for a 32bit target in GCC 4.4.0.
I have defined memory_constraints in predicates.c like this
(define_memory_constraint "Sr0"
"Memory refrence through base registers"
(match_test "target_mem_constraint (\"r0\", op)"))
In the function target_mem_constraint i have
int
target_mem_constraint (const char *str, rtx op)
{
char c0 = str[0];
char c1 = str[1];
rtx op0 = XEXP (op, 0);
bool strict = reload_completed;
if (!MEM_P (op))
return 0;
switch (c0)
{
case 'r':
return (!STACK_REG_RTX_P (op0)
&& BASE_REG_RTX_P (op0, strict));
.......
.......
My question is my definition of strict correct?
or should it be reload_in_progress || reload_completed?
Regards,
Shafi
More information about the Gcc
mailing list