Page MenuHomePhabricator

[IPSCCP] Optimistic function duplication. (WIP)
Needs ReviewPublic

Authored by fhahn on Jul 24 2020, 5:21 AM.
This revision needs review, but there are no reviewers specified.

Details

Reviewers
None
Summary

This is just a proof-of-concept.

Optimistically duplicate track-able functions with all constant
arguments for functions up to a certain size.

This approach is relatively easy to implement but potentially quite
expensive and it might be better to just instant separate function-only
solver.

Diff Detail

Unit TestsFailed

TimeTest
30 mslinux > LLVM.Transforms/SCCP::Unknown Unit Message ("")
Script: -- : 'RUN: at line 1'; /mnt/disks/ssd0/agent/llvm-project/build/bin/opt -ipsccp -S /mnt/disks/ssd0/agent/llvm-project/llvm/test/Transforms/SCCP/ip-add-range-to-call.ll | /mnt/disks/ssd0/agent/llvm-project/build/bin/FileCheck /mnt/disks/ssd0/agent/llvm-project/llvm/test/Transforms/SCCP/ip-add-range-to-call.ll
80 mswindows > LLVM.Transforms/SCCP::Unknown Unit Message ("")
Script: -- : 'RUN: at line 1'; c:\ws\w4a\llvm-project\premerge-checks\build\bin\opt.exe -ipsccp -S C:\ws\w4a\llvm-project\premerge-checks\llvm\test\Transforms\SCCP\ip-add-range-to-call.ll | c:\ws\w4a\llvm-project\premerge-checks\build\bin\filecheck.exe C:\ws\w4a\llvm-project\premerge-checks\llvm\test\Transforms\SCCP\ip-add-range-to-call.ll