This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] replace a bunch of equivalent checks for asm operands with a new function


> This idiom: "if (GET_CODE (body) == ASM_INPUT || asm_noperands (body)
> 
> >= 0)" appears in multiple places. There's even one place where the
> 
> idiom above is used in reverse (making the GET_CODE... check
> redundant). A few more places to the equivalent by checking
> extract_asm_operands != NULL.

I think that the last point is not clear: asm_noperands can return -1 and yet 
extract_asm_operands has returned non-NULL.  And, at least in some cases, I 
think that the right predicate is extract_asm_operands.  In fact, I wonder 
whether in most cases the right combined predicate would be:

  GET_CODE (body) == ASM_INPUT || extract_asm_operands (body) != NULL

and asm_noperands only used when you really care about the operands.

> It made sense to me, at least, to replace those equivalent checks with
> a new function: insn_with_asm_operands_p().

The first hunk for config/ia64/ia64.c looks incorrect.

-- 
Eric Botcazou


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]