Skip to content

Remove the deprecation of IT instructions in the ARM ABI #3509

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Nov 9, 2021

Conversation

mstorsjo
Copy link
Contributor

@mstorsjo mstorsjo commented Nov 9, 2021

Upstream ARM has undeprecated the use of IT instructions. There's no formal announcement of the matter in itself, but the previous deprecations are being removed from the official docs.

See https://reviews.llvm.org/D108679#2975603 for a discussion on the matter, CC @dpaoliello who was involved in that discussion.

Upstream ARM has undeprecated the use of IT instructions. There's
no formal announcement of the matter in itself, but the previous
deprecations are being removed from the official docs.

See https://reviews.llvm.org/D108679#2975603 for a discussion
on the matter.
@ghost
Copy link

ghost commented Nov 9, 2021

CLA assistant check
All CLA requirements met.

@PRMerger16
Copy link
Contributor

@mstorsjo : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@ktoliver
Copy link
Contributor

ktoliver commented Nov 9, 2021

#label:"aq-pr-triaged"

@PRMerger4 PRMerger4 added the aq-pr-triaged Tracking label for the PR review team label Nov 9, 2021
@colin-home
Copy link
Contributor

@mstorsjo and cc: @dpaoliello
Do you know if this un-deprecation (is that a word?) applies to previous versions of our armasm tool, and to all ARM processors? Just wondering if there's a set of processors or old assemblers where the deprecation still holds, especially if certain code won't work on Windows on ARM.

@dpaoliello
Copy link
Contributor

Do you know if this un-deprecation (is that a word?) applies to previous versions of our armasm tool, and to all ARM processors? Just wondering if there's a set of processors or old assemblers where the deprecation still holds, especially if certain code won't work on Windows on ARM.

@corob-msft The un-deprecation is a change by ARM - there have been no changes that I know of to any Microsoft tools or OSes.

From the Windows side, these instructions were always supported, and I don't believe that we ever supported any hardware that didn't support the instructions.

@mstorsjo
Copy link
Contributor Author

mstorsjo commented Nov 9, 2021

@mstorsjo and cc: @dpaoliello
Do you know if this un-deprecation (is that a word?) applies to previous versions of our armasm tool, and to all ARM processors? Just wondering if there's a set of processors or old assemblers where the deprecation still holds, especially if certain code won't work on Windows on ARM.

When it comes to actual processors, there hasn't been any issue so far (as it would break backwards binary compatbility), but I've understood it that they (ARM) reserved the right to degrade/break it later (and thus put in the deprecation preemptively) - but now they've decided that they won't do that, so there's no longer any reason to avoid those constructs.

Yeah ideally armasm would also stop warning about these constructs - I guess I could file a public bug report about it, but I'm not sure if it's as effective as if someone of you would start it.

From the Windows side, these instructions were always supported, and I don't believe that we ever supported any hardware that didn't support the instructions.

Yeah I don't think there has been any (armv8-a) processors that didn't support those instructions (and the deprecation was added as part of armv8 to begin with).

Copy link
Contributor

@colin-home colin-home left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mstorsjo Thanks for the update and the info. Merging shortly. Docs should be updated tomorrow.

@colin-home colin-home merged commit b0350af into MicrosoftDocs:master Nov 9, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants