[PATCH] D125335: Give option to use isCopyInstr to determine which MI is treated as Copy instruction in MCP

Xin Tong via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 24 10:07:36 PDT 2022


adriantong1024 added a comment.

Hi

I compiled gcc.c from https://people.csail.mit.edu/smcc/projects/single-file-programs/ and here are the results. This is compiling for ARM64 on an ARM64 machine.

Overall I feel MCP is taking a very small percentage of the total compilation time.

TRUNK:
======

ytbcp30:~# time ./clang.trunk -O3 gcc.i -c -ftime-report  |& grep "Machine Copy Propagation Pass"

  0.2181 (  0.5%)   0.0087 (  0.2%)   0.2267 (  0.5%)   0.2279 (  0.5%)  Machine Copy Propagation Pass
  0.1829 (  0.4%)   0.0092 (  0.2%)   0.1921 (  0.4%)   0.1928 (  0.4%)  Machine Copy Propagation Pass #2

real    2m7.288s
user    2m0.292s
sys     0m5.951s

PATCHED:
========

ytbcp30:~# time ./clang.patched -O3 gcc.i -c -ftime-report  |& grep "Machine Copy Propagation Pass"

  0.2162 (  0.5%)   0.0099 (  0.2%)   0.2261 (  0.5%)   0.2272 (  0.5%)  Machine Copy Propagation Pass
  0.2071 (  0.5%)   0.0081 (  0.2%)   0.2153 (  0.5%)   0.2161 (  0.5%)  Machine Copy Propagation Pass #3
  0.1811 (  0.4%)   0.0098 (  0.2%)   0.1909 (  0.4%)   0.1915 (  0.4%)  Machine Copy Propagation Pass #2

real    2m6.928s
user    2m0.060s
sys     0m6.070s


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D125335/new/

https://reviews.llvm.org/D125335



More information about the llvm-commits mailing list