On 10/22/14 17:01, Maxim Kuvyrkov wrote:
On Oct 23, 2014, at 9:02 AM, Jeff Law <l...@redhat.com> wrote:
On 10/20/14 21:35, Maxim Kuvyrkov wrote:
Hi,
This patch is a simple fix to allow decompose_address to handle
SCRATCH'es during 2nd scheduler pass. This patch is a
prerequisite for a scheduler improvement that relies on
decompose_address to parse insns.
Bootstrapped and regtested on x86_64-linux-gnu and regtested on
arm-linux-gnueabihf and aarch64-linux-gnu.
I'd like to see some further discussion here.
get_base_term is supposed to look at its argument as a base
address. I'm curious under what circumstances you want to have a
SCRATCH as a base address?
I didn't see anything in patch #8 which obviously dependended on
this, but maybe it's in there, but more subtle than expected.
If you can justify why it's useful to handle scratch in here, then
the patch will be fine.
Without this patch decompose_address() ICEs during second scheduler
pass on prologue instructions that usually have "(clobber (mem:BLK
(scratch))". The only reason for this patch is to prevent that fault
and enable use of decompose_address during 2nd scheduler pass.
Does this answer your question, or are you looking for a more
in-depth reason?
Yea, that's everything I needed to know. Patch approved.
Thanks,
Jeff