Skip to content

Backport SVN r309744 to 5.0 #33372

@mstorsjo

Description

@mstorsjo
Bugzilla Link 34025
Resolution FIXED
Resolved on Aug 02, 2017 10:39
Version 5.0
OS All
Blocks #33196
CC @zmodem

Extended Description

Please backport r309744 ([AArch64] Rewrite stack frame handling for win64 vararg functions) to 5.0. This fixes another issue with the new win/arm64 calling convention - similar to the one in #33267 that already was backported (thanks!).

The rationale is the same as in that one: The support for targeting win/arm64 itself is still incomplete, but the calling convention handling in itself is getting complete, and can be used by Wine for clang >= 5.0. (The code already in 5.0 works for Wine for the codepaths I've tested so far, but this makes it more correct, in case other, so far untested, functions are compiled differently.)

This carries no regression risk as it only touches code in new codepaths that aren't used before. Even though it renames a variable, it doesn't have any practical effect on other targets than windows.

One of the touched files, test/CodeGen/AArch64/win64_vararg.ll, got another change inbetween, in r309015 (just an added testcase) - the one to backport should apply cleanly both with and without the updated test (and backporting the test shouldn't hurt either if that's an option).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions