This is the mail archive of the gcc-patches@gcc.gnu.org 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: [patch] for PR 26449


On Tue, 6 Jun 2006, Zdenek Dvorak wrote:
> 	PR rtl-optimization/26449
> 	* loop-invariant.c (move_invariant_reg): Fail if force_operand fails.

This is OK for mainline, provided that you also add Richard Guenther's
reduced testcase from comment #2 of the bugzilla PR as a new gcc.target
testcase.

We've been bitten by these awkward TImode patterns before, for example,
http://gcc.gnu.org/ml/gcc-patches/2006-05/msg00472.html, where the SSE2
shift instructions expose TImode operations to the RTL optimizers, even
though !scalar_mode_supported(TImode) on x86.

I think your fix of explicitly checking whether force_operand fails
in move_invariant_reg looks safe, and prevents problems on all targets,
but I still think we should tidy up the i386 backend in this respect.

Thanks for fixing this.

Roger
--


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