This is an archive of the discontinued LLVM Phabricator instance.

X86: don't fold swifterror load into anything
AcceptedPublic

Authored by t.p.northover on Jun 30 2022, 4:56 AM.

Details

Reviewers
Gerolf
Summary

Swifterror loads aren't what they seem because there's an implicit mini-mem2reg that happens during ISel, effectively removing the stack slot from existence. So it shouldn't be folded into any other arithmetic by FastISel either.

Diff Detail

Event Timeline

t.p.northover created this revision.Jun 30 2022, 4:56 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 30 2022, 4:56 AM
t.p.northover requested review of this revision.Jun 30 2022, 4:56 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 30 2022, 4:56 AM

I don't have direct expertise in this code, but the idea looks correct to me.

It's a shame that this sort of thing is a problem, of course.

Gerolf accepted this revision.Jul 7 2022, 9:59 AM
Gerolf added a subscriber: Gerolf.

LGTM!

This revision is now accepted and ready to land.Jul 7 2022, 9:59 AM