[llvm-branch-commits] [llvm] [RISCV] Add initial support of memcmp expansion (PR #107548)

Luke Lau via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Wed Sep 11 00:51:31 PDT 2024


lukel97 wrote:

I collected the stats on the number of memcmps that were inlined, it looks like we're able to expand a good chunk of them:
```
Program                                       expand-memcmp.NumMemCmpCalls              expand-memcmp.NumMemCmpInlined             
                                              lhs                          rhs    diff  lhs                            rhs    diff 
FP2017rate/510.parest_r/510.parest_r          410.00                       468.00 14.1%                                104.00  inf%
INT2017speed/602.gcc_s/602.gcc_s               83.00                        92.00 10.8%                                 36.00  inf%
INT2017rate/502.gcc_r/502.gcc_r                83.00                        92.00 10.8%                                 36.00  inf%
INT2017spe...00.perlbench_s/600.perlbench_s   207.00                       220.00  6.3%                                120.00  inf%
INT2017rat...00.perlbench_r/500.perlbench_r   207.00                       220.00  6.3%                                120.00  inf%
INT2017spe...ed/620.omnetpp_s/620.omnetpp_s   304.00                       306.00  0.7%                                 13.00  inf%
INT2017rate/520.omnetpp_r/520.omnetpp_r       304.00                       306.00  0.7%                                 13.00  inf%
FP2017rate/508.namd_r/508.namd_r               13.00                        13.00  0.0%                                 13.00  inf%
INT2017rate/541.leela_r/541.leela_r            40.00                        40.00  0.0%                                  3.00  inf%
INT2017speed/641.leela_s/641.leela_s           40.00                        40.00  0.0%                                  3.00  inf%
INT2017speed/625.x264_s/625.x264_s              8.00                         8.00  0.0%                                  6.00  inf%
INT2017spe...23.xalancbmk_s/623.xalancbmk_s     8.00                         8.00  0.0%                                  6.00  inf%
INT2017rate/557.xz_r/557.xz_r                   6.00                         6.00  0.0%                                  4.00  inf%
INT2017rat...23.xalancbmk_r/523.xalancbmk_r     8.00                         8.00  0.0%                                  6.00  inf%
INT2017rate/525.x264_r/525.x264_r               8.00                         8.00  0.0%                                  6.00  inf%
FP2017speed/644.nab_s/644.nab_s                77.00                        77.00  0.0%                                 71.00  inf%
FP2017speed/638.imagick_s/638.imagick_s         3.00                         3.00  0.0%                                            
FP2017rate/544.nab_r/544.nab_r                 77.00                        77.00  0.0%                                 71.00  inf%
FP2017rate/538.imagick_r/538.imagick_r          3.00                         3.00  0.0%                                            
FP2017rate/526.blender_r/526.blender_r         41.00                        41.00  0.0%                                 27.00  inf%
FP2017rate/511.povray_r/511.povray_r            5.00                         5.00  0.0%                                  5.00  inf%
INT2017speed/657.xz_s/657.xz_s                  6.00                         6.00  0.0%                                  4.00  inf%
```

There's a small difference in the number of original memcmp calls, there's some merge commits in this branch which might have changed the codegen slightly in the meantime.

I'm working on getting some runtime numbers now, sorry for the delay

https://github.com/llvm/llvm-project/pull/107548


More information about the llvm-branch-commits mailing list