This is the mail archive of the 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: PR/32004, tree-ssa caused in/out asm constraints to often need reloads

Eric Botcazou wrote:
Actually it is fixed by this trivial patch. Ok for 4.2/4.1?

This patch is *not* trivial. The RTL dataflow engine in flow.c has known quirks and we should be conservative in changing how it is invoked.

That's why I'm invoking in GLOBAL_RM_NOTES rather than LOCAL which ought to be enough. That's conservativeness.

I do believe the patch is trivial (note I didn't say obvious) if you investigated the failure mode. The problem is that reg_equiv_regs is set when REG_N_REFS is 2 and in this case we have more than 2 after the new pass. The patch is in testing now, and the gcc directory has already been tested fully on both the 4.1 and 4.2 branches.

If you want me to revert the patch on 4.1 and apply the combination in a few days, after letting it stay on 4.2 for a while, I can do that. Otherwise, I would very much prefer fixing PR21291/PR32004, which is as bad a regression as the one I introduced. Of course, I'm not meaning I'm *not* sorry to have introduced a regression.


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