Skip to content

Consider moving to large memory model on Windows

Windows likes to keep all of its code in address space below 2 GB as this is what is required by the IMAGE_REL_AMD64_ADDR32 relocation. This tends to cause linker failures on Windows (#16409 (closed)). One way to avoid this (at least for code produced by GHC) is to compile our code with a large memory model (e.g. -mcmodel=large or -mcmodel=medium). This will give us significantly more flexibility in linking (in the case of large allowing us to reserve the sub-2GB region for native libraries compiled with the small memory model) in exchange for large (and perhaps slightly slower) code.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information