This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RE: PATCH: Add Intel Atom optimization
- From: "Ye, Joey" <joey dot ye at intel dot com>
- To: Uros Bizjak <ubizjak at gmail dot com>, "H.J. Lu" <hjl dot tools at gmail dot com>
- Cc: "jh at suse dot cz" <jh at suse dot cz>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "Guo, Xuepeng" <xuepeng dot guo at intel dot com>, Steven Bosscher <stevenb dot gcc at gmail dot com>
- Date: Tue, 7 Apr 2009 09:57:47 +0800
- Subject: RE: PATCH: Add Intel Atom optimization
- References: <20090330232022.GA13339@lucon.org> <5787cf470904060225i715a8f7byb756c03b835a0c81@mail.gmail.com>
From: Uros Bizjak [mailto:ubizjak@gmail.com]
>> (distance_non_agu_define): New function.
>> (reg_mentioned_by_mem_p): Likewise.
>> (distance_agu_use): Likewise.
>> (ix86_lea_for_add_ok): Likewise.
>
> please remove above functions from the patch and put them in a
> separate follow-up patch. The main problem is with LEA discovery code
> (see the comment above distance_non_agu_define). Since this function
> is used after reload, we can use get_attr_type function on the insn
> RTL. This func will determine, if insn is LEA or not. Also, perhaps
> Steven B sees some opportunity to use DF infrastructure here instead
> of scanning insn stream every time the function is called.
Since get_attr_type will mess up current operands, we failed to use it in
this patch. Namely, these functions will be called when splitting one insn.
But get_attr_type will call recog and rewrite global variables like operands.
Can extract_insn_cached help here?
HJ has sent a patch without these functions.
Thanks - Joey