This is an archive of the discontinued LLVM Phabricator instance.

[X86][VARARG] Assign MMO earlier to avoid prolog insert point been sunk across VASTART_SAVE_XMM_REGS
ClosedPublic

Authored by pengfei on Oct 29 2021, 5:27 PM.

Details

Summary

The changes in D80163 defered the assignment of MachineMemOperand (MMO)
until the X86ExpandPseudo pass. This will result in crash due to prolog
insert point been sunk across the pseudo instruction VASTART_SAVE_XMM_REGS.

Moving the assignment to the creation of the node can avoid the problem.

Diff Detail

Event Timeline

pengfei created this revision.Oct 29 2021, 5:27 PM
pengfei requested review of this revision.Oct 29 2021, 5:27 PM
Herald added a project: Restricted Project. · View Herald TranscriptOct 29 2021, 5:27 PM
avl added a comment.Nov 2 2021, 4:11 AM

It looks good to me. Though, wait for one more reviewer, please.

rnk accepted this revision.Nov 2 2021, 3:29 PM

lgtm

This revision is now accepted and ready to land.Nov 2 2021, 3:29 PM