Re: RTL Optimisations

2014-03-27 Thread Umesh Kalappa
Georg, Currently we implemented the expander ,where passing arguments and handling return type had been taken care in the expander along the emitting call insn. Do you have any suggestion over here like other practical approach ? Appreciate your reply here. Thank you in advance ~Umesh On

Re: RTL Optimisations

2014-03-26 Thread Georg-Johann Lay
Am 03/25/2014 01:28 PM, schrieb Jeff Law: On 03/25/14 06:23, Umesh Kalappa wrote: Dear All, The GCC source reference 4.8.1 will synthesized some of the double word operations(SI mode) like add /sub in the below case from the word size (HI) patterns, (code snippet) expand_binop_directly

RTL Optimisations

2014-03-25 Thread Umesh Kalappa
Dear All, The GCC source reference 4.8.1 will synthesized some of the double word operations(SI mode) like add /sub in the below case from the word size (HI) patterns, (code snippet) expand_binop_directly function in the optabs.c. /* These can be done a word at a time by propagating carries.

Re: RTL Optimisations

2014-03-25 Thread Jeff Law
On 03/25/14 06:23, Umesh Kalappa wrote: Dear All, The GCC source reference 4.8.1 will synthesized some of the double word operations(SI mode) like add /sub in the below case from the word size (HI) patterns, (code snippet) expand_binop_directly function in the optabs.c. /* These can be done

Re: cond_exec no-ops in RTL optimisations

2013-03-27 Thread Eric Botcazou
While working with some splitters I noticed that the RTL optimisation passes do not optimise away a no-op wrapped in a cond_exec. So for example, if my splitter generates something like: (cond_exec (lt:SI (reg:CC CC_REGNUM) (const_int 0)) (set (match_dup 1)

cond_exec no-ops in RTL optimisations

2013-03-26 Thread Kyrylo Tkachov
Hi everyone, While working with some splitters I noticed that the RTL optimisation passes do not optimise away a no-op wrapped in a cond_exec. So for example, if my splitter generates something like: (cond_exec (lt:SI (reg:CC CC_REGNUM) (const_int 0)) (set (match_dup 1)