This is an archive of the discontinued LLVM Phabricator instance.

Copy utilities updated and added for MI flags
ClosedPublic

Authored by mcberg2017 on Sep 12 2018, 3:40 PM.

Details

Summary

This patch adds a GlobalIsel copy utility into MI for flags and updates the instruction emitter for the SDAG path. Some tests show new behavior and I added one for GlobalIsel which mirrors an SDAG test for handling nsw/nuw.

Diff Detail

Repository
rL LLVM

Event Timeline

mcberg2017 created this revision.Sep 12 2018, 3:40 PM
arsenm added inline comments.Sep 13 2018, 1:52 AM
include/llvm/CodeGen/MachineInstr.h
1530 ↗(On Diff #165171)

should be reference

lib/CodeGen/GlobalISel/IRTranslator.cpp
285 ↗(On Diff #165171)

cast<>

Changed copyIRFlags as suggested...

arsenm accepted this revision.Sep 17 2018, 7:26 PM

LGTM

This revision is now accepted and ready to land.Sep 17 2018, 7:26 PM
This revision was automatically updated to reflect the committed changes.

It seems that following test is broken with this change: DebugInfo/WebAssembly/dbg-value-live-interval.ll
Confirmed that reverting the change locally fixes the tests. Could you please take a look.