[PATCH] D115441: [X86][MS] Add 80bit long double support for Windows

Phoebe Wang via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Dec 11 07:21:39 PST 2021


pengfei added a comment.

> I seem to recall assuming that Windows long double was 64-bits in many, many places. Unfortunately, I have no idea where that could've happened.

Is it because MSDN explicitly declares it? https://docs.microsoft.com/en-us/previous-versions/9cx8xs15(v=vs.140)?redirectedfrom=MSDN

> Something that comes to mind immediately is the MSVC name mangler. I don't think that's a blocking issue, but it's something you should be aware of if you want to promote this flag's usage.

Not sure if I got your point. I checked both Clang and MSVC can mangle/demangle it, e.g., "long double foo(long double a, long double b)" <==> "?foo@@YAOOO at Z". So this is not a problem?

  >undname "?foo@@YAOOO at Z"
  Microsoft (R) C++ Name Undecorator
  Copyright (C) Microsoft Corporation. All rights reserved.
  
  Undecoration of :- "?foo@@YAOOO at Z"
  is :- "long double __cdecl foo(long double,long double)"


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D115441



More information about the cfe-commits mailing list