Skip to content
  • Austin Seipp's avatar
    Make sure -fcmm-sink is passed to Parser properly · 9e133b9d
    Austin Seipp authored
    
    
    Parser.hs needs to be compiled with -fcmm-sink on x86 platforms, so the
    register allocator doesn't run out of stack slots. Previously, we had to
    do some CPP hacks in order to emit an #ifdef into the file - this is
    because we preprocess it once up front, and run the preprocessor again
    when we compile it.
    
    There's two cases: the boostrap compiler is > 7.8, and the stage1 parser
    needs the flag, or the stage1 compiler is compiling the stage2
    Parser.hs, and needs the flag..
    
    The previous approach was super fragile with Clang. The more principled
    fix is to instead do this through the build system.
    
    This fixes #8182.
    
    Signed-off-by: default avatarAustin Seipp <aseipp@pobox.com>
    9e133b9d