This is an archive of the discontinued LLVM Phabricator instance.

[ARMv8-M] [8/9] Add new system registers to ARMv8-M Baseline/Mainline
ClosedPublic

Authored by bsmith on Dec 7 2015, 3:17 AM.

Details

Reviewers
t.p.northover
Summary

This patch forms part of the ARMv8-M Baseline/Mainline support, adding support for new system registers in ARMv8-M Baseline/Mainline.

Diff Detail

Repository
rL LLVM

Event Timeline

bsmith updated this revision to Diff 42047.Dec 7 2015, 3:17 AM
bsmith retitled this revision from to [ARMv8-M] [8/9] Add new system registers to ARMv8-M Baseline/Mainline.
bsmith updated this object.
bsmith added a reviewer: t.p.northover.
bsmith set the repository for this revision to rL LLVM.
bsmith added a subscriber: llvm-commits.
bsmith updated this revision to Diff 43882.Jan 4 2016, 6:21 AM

Rebase patch against latest trunk changes.

t.p.northover edited edge metadata.Jan 13 2016, 4:14 PM

One nit here...

lib/Target/ARM/ARMISelDAGToDAG.cpp
3772

Won't this allow "basepri_maxns"? Seems a bit inconsistent with the others.

bsmith added inline comments.Jan 14 2016, 5:32 AM
lib/Target/ARM/ARMISelDAGToDAG.cpp
3772

It will reconstruct Reg = basepri, Flags = max{_ns,} into Reg = basepri_max, Flags = {ns,}, the call to getMClassRegisterMask afterwards will check whether or not the ns flags are allowed.

t.p.northover added inline comments.Jan 14 2016, 6:50 AM
lib/Target/ARM/ARMISelDAGToDAG.cpp
3772

But what if the second '_' is skipped? It looks like we'd treat Flags == "max_ns" and Flags == "maxns" equivalently, which seems like an unnecessary quirk.

bsmith added inline comments.Jan 14 2016, 7:26 AM
lib/Target/ARM/ARMISelDAGToDAG.cpp
3772

Ah, I see what you meant now, I'll fix it.

bsmith updated this revision to Diff 44880.Jan 14 2016, 7:41 AM
bsmith edited edge metadata.

Fixup logic handling basepri_max{_ns,} field splitting so as to not allow basepri_maxns.

t.p.northover accepted this revision.Jan 14 2016, 10:45 AM
t.p.northover edited edge metadata.

This looks reasonable now. Thanks for updating the patch.

Tim.

This revision is now accepted and ready to land.Jan 14 2016, 10:45 AM
bsmith closed this revision.Jan 15 2016, 2:35 AM

Thanks, committed as r257884.