[PATCH] D134441: [ObjC][ARC] Don't use operand bundle "clang.arc.attachedcall" in codegen for Windows

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 22 09:09:42 PDT 2022


fhahn added a comment.

In D134441#3808655 <https://reviews.llvm.org/D134441#3808655>, @sgraenitz wrote:

> The symptom is that Clang emits `movq %rax, %rdi` instead of `movq %rax, %rcx` while `objc_retainAutoreleasedReturnValue()` still expects the value in `%rcx`.
> It appears related to D94597 <https://reviews.llvm.org/D94597>. Is this a calling convention issue?

Oh right, so a different marker is used on Windows? The code that adds the marker is here: https://github.com/llvm/llvm-project/blob/main/llvm/lib/Target/X86/X86ExpandPseudo.cpp#L224

It would probably be better to just add Windows support there. Also, this should have a test case.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D134441/new/

https://reviews.llvm.org/D134441



More information about the llvm-commits mailing list