This is an archive of the discontinued LLVM Phabricator instance.

[X86] Speculatively load operands of select instruction
AbandonedPublic

Authored by lsaba on Aug 30 2017, 12:46 AM.

Details

Summary

For a select instruction where the operands are address calculations of two independent loads, the pass tries to speculate the loads and feed them into the select instruction, this allows early parallel execution of the loads and possibly memory folding into the CMOV instructions later on.
The pass currently only handles cases where the loads are elements of the same struct.

Diff Detail

Repository
rL LLVM

Event Timeline

lsaba created this revision.Aug 30 2017, 12:46 AM
lsaba abandoned this revision.Aug 30 2017, 1:19 AM