HomePhabricator

Reapply "[MachineCopyPropagation] Reimplement CopyTracker in terms of register…

Description

Reapply "[MachineCopyPropagation] Reimplement CopyTracker in terms of register units"

Recommits r342942, which was reverted in r343189, with a fix for an
issue where we would propagate unsafely if we defined only the upper
part of a register.

Original message:

Change the copy tracker to keep a single map of register units
instead of 3 maps of registers. This gives a very significant
compile time performance improvement to the pass. I measured a
30-40% decrease in time spent in MCP on x86 and AArch64 and much
more significant improvements on out of tree targets with more
registers.

Details

Committed
bognerOct 22 2018, 12:51 PM
Parents
rL344941: [Driver] allow Android triples to alias for non Android targets
Branches
Unknown
Tags
Unknown