https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71050

--- Comment #4 from rguenther at suse dot de <rguenther at suse dot de> ---
On May 11, 2016 3:52:43 PM GMT+02:00, "wschmidt at gcc dot gnu.org"
<gcc-bugzi...@gcc.gnu.org> wrote:
>https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71050
>
>--- Comment #3 from Bill Schmidt <wschmidt at gcc dot gnu.org> ---
>Sorry, accidentally saved before finishing my thoughts.
>
>How do we "inform" the middle-end that a DI subreg of a DF is very
>expensive? 

I have the same question.

>This differs wildly by processor for us.  We "can" always do the
>subreg, it's
>just that on older processors we do it in a horrible way.

But it seems you do that during reload only?  OTOH not exposing the memory
temporary is probably done to help combine which would be confused by memory
and because getting rid of the memory slot is not possible later.

Catch-22 ...

Note we exposed DF to DI subregs similarly before.

We expose vector element extracts the same way.

So I'm looking for a way to compose a predicate for what kind of 'subregs' are
undesirable (those that need to go through memory).  Given the expander choice
there likely is no such predicate today.

Richard.

Reply via email to