Page MenuHomePhabricator

[CSSPGO] Flip SkipPseudoOp to true for MIR APIs.
ClosedPublic

Authored by hoy on Mon, Apr 12, 11:24 AM.

Details

Summary

Flipping the default value of SkipPseudoOp to true for those MIR APIs to favor maximum performance. Note that certain spots like branch folding and MIR if-conversion is are disabled for better counts quality. For these two optimizations, this is a no-diff change.

The counts quality with SPEC2017 before/after this change is unchanged.

Diff Detail

Event Timeline

hoy created this revision.Mon, Apr 12, 11:24 AM
hoy requested review of this revision.Mon, Apr 12, 11:24 AM
Herald added a project: Restricted Project. · View Herald TranscriptMon, Apr 12, 11:24 AM
wmi added inline comments.Sun, Apr 18, 1:11 PM
llvm/include/llvm/CodeGen/MachineBasicBlock.h
683–684

TODO can be removed now. It maybe better to list the optimizations like branch folding and if-conversion here which set SkipPseudoOp to false as a reference.

hoy added inline comments.Mon, Apr 19, 8:59 AM
llvm/include/llvm/CodeGen/MachineBasicBlock.h
683–684

Good point. Comment changed.

hoy updated this revision to Diff 338536.Mon, Apr 19, 8:59 AM

Addressing Wei's comment.

wmi accepted this revision.Mon, Apr 19, 3:05 PM

LGTM, thanks.

This revision is now accepted and ready to land.Mon, Apr 19, 3:05 PM
This revision was landed with ongoing or failed builds.Mon, Apr 19, 5:55 PM
This revision was automatically updated to reflect the committed changes.
chill added a subscriber: chill.Tue, Apr 20, 7:02 AM

Apologies if you're already aware.

It appears with this change an expensive checks buildbot started to fail: https://lab.llvm.org/buildbot/#/builders/16/builds/9542

hoy added a comment.Tue, Apr 20, 9:00 AM

Apologies if you're already aware.

It appears with this change an expensive checks buildbot started to fail: https://lab.llvm.org/buildbot/#/builders/16/builds/9542

Thanks for letting me know. The failures should be fixed by D100334.

Apologies if you're already aware.

It appears with this change an expensive checks buildbot started to fail: https://lab.llvm.org/buildbot/#/builders/16/builds/9542

Thanks for letting me know. The failures should be fixed by D100334.

Looks like it's still failing at today's trunk even with that change: https://lab.llvm.org/buildbot/#/builders/16/builds/9678

hoy added a comment.Wed, Apr 21, 8:56 AM

Apologies if you're already aware.

It appears with this change an expensive checks buildbot started to fail: https://lab.llvm.org/buildbot/#/builders/16/builds/9542

Thanks for letting me know. The failures should be fixed by D100334.

Looks like it's still failing at today's trunk even with that change: https://lab.llvm.org/buildbot/#/builders/16/builds/9678

I see. It's failing with -DLLVM_ENABLE_EXPENSIVE_CHECKS=ON. I'm taking a look. Thanks.

hoy added a comment.Wed, Apr 21, 9:19 AM

Apologies if you're already aware.

It appears with this change an expensive checks buildbot started to fail: https://lab.llvm.org/buildbot/#/builders/16/builds/9542

Thanks for letting me know. The failures should be fixed by D100334.

Looks like it's still failing at today's trunk even with that change: https://lab.llvm.org/buildbot/#/builders/16/builds/9678

I see. It's failing with -DLLVM_ENABLE_EXPENSIVE_CHECKS=ON. I'm taking a look. Thanks.

I just pushed in a fix: https://reviews.llvm.org/rGb6db6f5530d2 .