This is an archive of the discontinued LLVM Phabricator instance.

[docs] add early Arm arch support improvements to release notes
ClosedPublic

Authored by stuij on Jan 20 2023, 9:05 AM.

Diff Detail

Event Timeline

stuij created this revision.Jan 20 2023, 9:05 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 20 2023, 9:05 AM
stuij requested review of this revision.Jan 20 2023, 9:05 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 20 2023, 9:05 AM
tschuett added inline comments.
llvm/docs/ReleaseNotes.rst
148

Armv4

stuij updated this revision to Diff 490891.Jan 20 2023, 9:18 AM

fix typo

stuij marked an inline comment as done.Jan 20 2023, 9:18 AM

I think this is pretty close. I think we shouldn't claim full support for Armv4 as we don't support the R_ARMV4BX relocation yet.

llvm/docs/ReleaseNotes.rst
146

Sadly I think we'll need to drop full support for Armv4 as we are missing support for the R_ARM_V4BX relocation (https://github.com/llvm/llvm-project/blob/main/lld/ELF/Arch/ARM.cpp#L166) . This isn't important for clang as it uses mov pc,lr when compiling for -march=armv4, but it is possible that some GNU input objects will have bx lr along with a R_ARM_V4BX relocation.

I suggest

  • Added Armv4 and Armv4T compatible thunks. LLD will no longer generate BX instructions for Armv4 or BLX instructions for either Armv4 or Armv4T. Armv4T is now fully supported.
stuij updated this revision to Diff 491370.Jan 23 2023, 7:25 AM

rephrasing after review comment

stuij marked an inline comment as done.Jan 23 2023, 7:27 AM
stuij added inline comments.
llvm/docs/ReleaseNotes.rst
146

Thanks! Done.

peter.smith accepted this revision.Jan 23 2023, 7:38 AM

Thanks for the update, LGTM.

This revision is now accepted and ready to land.Jan 23 2023, 7:38 AM
This revision was landed with ongoing or failed builds.Jan 23 2023, 8:12 AM
This revision was automatically updated to reflect the committed changes.
stuij marked an inline comment as done.