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] move a call to assemble_external


2008/7/25 Steve Ellcey <sje@cup.hp.com>:
> Following up to my own email, it looks like there is a parallel
> getting in the way of your pattern recognition.  Here is a
> debug_rtx dump of the insn that I get with my little test program:
>
> (call_insn 5 2 8 x.c:2 (parallel [
>            (call (mem:SI (symbol_ref/v:SI ("@foo") [flags 0x241] <function_decl 79f2a500 foo>) [0 S4 A32])
>                (const_int 16 [0x10]))
>            (clobber (reg:SI 1 %r1))
>            (clobber (reg:SI 2 %r2))
>            (use (const_int 0 [0x0]))
>        ]) 206 {call_symref} (nil)
>    (nil))
>
> So the MEM_P check is failing because it sees the parallel instead of the
> mem.

The attached patch should work, but it is a hack. What is the correct
way to go from a CALL_INSN to the inner CALL?


> Steve Ellcey
> sje@cup.hp.com
>


Cheers,
-- 
Rafael Avila de Espindola

Google Ireland Ltd.
Gordon House
Barrow Street
Dublin 4
Ireland

Registered in Dublin, Ireland
Registration Number: 368047

Attachment: fix.patch
Description: Binary data


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