Skip to content
  • Cheng Shao's avatar
    compiler/ghci/rts: remove stdcall support completely · 395412e8
    Cheng Shao authored and Marge Bot's avatar Marge Bot committed
    We have formally dropped i386 windows support (#18487) a long time
    ago. The stdcall foreign call convention is only used by i386 windows,
    and the legacy logic around it is a significant maintenance burden for
    future work that adds arm64 windows support (#24603). Therefore, this
    patch removes stdcall support completely from the compiler as well as
    the RTS (#24883):
    
    - stdcall is still recognized as a FFI calling convention in Haskell
      syntax. GHC will now unconditionally emit a warning
      (-Wunsupported-calling-conventions) and treat it as ccall.
    - Apart from minimum logic to support the parsing and warning logic,
      all other code paths related to stdcall has been completely stripped
      from the compiler.
    - ghci only supports FFI_DEFAULT_ABI and ccall convention from now on.
    - FFI foreign export adjustor code on all platforms no longer handles
      the stdcall case and only handles ccall from now on.
    - The Win32 specific parts of RTS no longer has special co...
    395412e8