This is an archive of the discontinued LLVM Phabricator instance.

[X86] Block UndefRegUpdate
ClosedPublic

Authored by tkrupa on Jun 1 2018, 1:24 AM.

Details

Summary

Prevent folding of operations with memory loads when one of the sources has undefined register update.

Diff Detail

Repository
rL LLVM

Event Timeline

tkrupa created this revision.Jun 1 2018, 1:24 AM
craig.topper accepted this revision.Jun 4 2018, 10:27 AM

I'm going to accept this because AVX and SSE are consistent on cvtsi2ss and similar instructions now. But we should file a bug to fix both.

test/CodeGen/X86/fast-isel-int-float-conversion-x86-64.ll
80 ↗(On Diff #149407)

This did nothing to prevent an undef register update. The load goes to a GPR so it didn't do any good. But it is consistent with what was done for the SSE intruction.

This revision is now accepted and ready to land.Jun 4 2018, 10:27 AM
This revision was automatically updated to reflect the committed changes.