[PATCH] D36105: [AArch64] Ignore stdcall and similar on aarch64/windows

Martin Storsjö via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Aug 1 12:24:03 PDT 2017


mstorsjo added inline comments.


================
Comment at: lib/Basic/Targets/AArch64.cpp:466-467
+  case CC_X86ThisCall:
+  case CC_X86FastCall:
+  case CC_X86VectorCall:
+    return CCCR_Ignore;
----------------
mstorsjo wrote:
> rnk wrote:
> > Do they really ignore __fastcall and __vectorcall on arm64?
> > 
> > I assume __thiscall and __stdcall are all over various Win SDK headers, so they need to be ignored for compatibility, but I've never seen public documented APIs using __vectorcall. The STL ifdefs out those overloads, right?
> I don't have MSVC for arm64 to test with (but @mgrang does so he can check), but I included them for consistency and completeness.
@mgrang - can you check whether this compiles without warnings (with e.g. `-W3`) on MSVC?

```
void __stdcall foo(void) {
}

void __fastcall bar(void) {
}

void __vectorcall baz(void) {
}
```

@rnk - FWIW, I checked MSVC for ARM (32 bit), and that one also ignores all of them without a warning.


https://reviews.llvm.org/D36105





More information about the cfe-commits mailing list