On 19/03/15 13:56, Steven Bosscher wrote:
On Thu, Mar 19, 2015 at 2:45 PM, Kyrill Tkachov wrote:
As pointed out by James Greenhalgh offline the correct thing would have been
to do an
emit_move_insn to let the backend expanders do the right thing (especially
in the concerned
testcase gcc.c-torture/execute/pr65427.c that uses 256-bit vectors that arm
doesn't support
natively).
This is supposed to be caught by want_to_gcse_p() via
can_assign_to_reg_without_clobbers_p(). How does your expression get
past that barrier?

The gcc_unreachable() is there because all the code in gcse.c assumes
it is OK to emit a SET-insn without going through emit_move_insn().

Thanks for the pointers, I was too hasty with that patch.
I'm not very familiar with the gcse code so I'll dig around.

Kyrill

Ciao!
Steven



Reply via email to