Page MenuHomePhabricator

[WIP] Don't delete all llvm.assume instructions in codegenprepare
AbandonedPublic

Authored by markus on May 27 2021, 5:08 AM.

Details

Reviewers
None
Summary

Only delete those @llvm.assumes that including their predecessors (with no other successors) are the sole occupants of a block.

The rationale is that whenever possible we need to preserve the @llvm.assumes in IR during codegen as they help guide AA during instruction scheduling.

Diff Detail

Unit TestsFailed

TimeTest
220 msx64 windows > LLVM.DebugInfo/X86::basic-block-sections-debug-loc-const-value-1.ll
Script: -- : 'RUN: at line 1'; c:\ws\w7\llvm-project\premerge-checks\build\bin\llc.exe C:\ws\w7\llvm-project\premerge-checks\llvm\test\DebugInfo\X86\basic-block-sections-debug-loc-const-value-1.ll --dwarf-version=4 --basic-block-sections=none -filetype=obj -o C:\ws\w7\llvm-project\premerge-checks\build\test\DebugInfo\X86\Output\basic-block-sections-debug-loc-const-value-1.ll.tmp
220 msx64 windows > LLVM.DebugInfo/X86::basic-block-sections-debug-loc-const-value-2.ll
Script: -- : 'RUN: at line 1'; c:\ws\w7\llvm-project\premerge-checks\build\bin\llc.exe C:\ws\w7\llvm-project\premerge-checks\llvm\test\DebugInfo\X86\basic-block-sections-debug-loc-const-value-2.ll --dwarf-version=4 --basic-block-sections=none -filetype=obj -o C:\ws\w7\llvm-project\premerge-checks\build\test\DebugInfo\X86\Output\basic-block-sections-debug-loc-const-value-2.ll.tmp
230 msx64 windows > LLVM.DebugInfo/X86::basic-block-sections-debug-loc.ll
Script: -- : 'RUN: at line 5'; c:\ws\w7\llvm-project\premerge-checks\build\bin\llc.exe C:\ws\w7\llvm-project\premerge-checks\llvm\test\DebugInfo\X86\basic-block-sections-debug-loc.ll --dwarf-version=4 --basic-block-sections=none -filetype=obj -o C:\ws\w7\llvm-project\premerge-checks\build\test\DebugInfo\X86\Output\basic-block-sections-debug-loc.ll.tmp
190 msx64 windows > LLVM.DebugInfo/X86::basic-block-sections-debug-loclist-4.ll
Script: -- : 'RUN: at line 1'; c:\ws\w7\llvm-project\premerge-checks\build\bin\llc.exe C:\ws\w7\llvm-project\premerge-checks\llvm\test\DebugInfo\X86\basic-block-sections-debug-loclist-4.ll --dwarf-version=4 --basic-block-sections=none -filetype=obj -o C:\ws\w7\llvm-project\premerge-checks\build\test\DebugInfo\X86\Output\basic-block-sections-debug-loclist-4.ll.tmp
190 msx64 windows > LLVM.DebugInfo/X86::basic-block-sections-debug-loclist-5.ll
Script: -- : 'RUN: at line 1'; c:\ws\w7\llvm-project\premerge-checks\build\bin\llc.exe C:\ws\w7\llvm-project\premerge-checks\llvm\test\DebugInfo\X86\basic-block-sections-debug-loclist-5.ll --dwarf-version=4 --basic-block-sections=none -filetype=obj -o C:\ws\w7\llvm-project\premerge-checks\build\test\DebugInfo\X86\Output\basic-block-sections-debug-loclist-5.ll.tmp

Event Timeline

markus created this revision.May 27 2021, 5:08 AM
markus requested review of this revision.May 27 2021, 5:08 AM
Herald added a project: Restricted Project. · View Herald TranscriptMay 27 2021, 5:08 AM
markus abandoned this revision.May 28 2021, 6:39 AM

Abandoned in favor of D103316.