This rolls forward the change introducing Int8# and Word8#
and fixes the problems discovered on 32-bit x86.
- rGHC Glasgow Haskell Compiler
Lint Warnings Excuse: consistency with existing code Severity Location Code Message Warning compiler/nativeGen/X86/CodeGen.hs:678 TXT3 Line Too Long Warning compiler/nativeGen/X86/CodeGen.hs:679 TXT3 Line Too Long Warning compiler/nativeGen/X86/CodeGen.hs:2412 TXT3 Line Too Long Warning compiler/nativeGen/X86/CodeGen.hs:2503 TXT3 Line Too Long Warning compiler/nativeGen/X86/CodeGen.hs:2505 TXT3 Line Too Long Warning compiler/prelude/PrelNames.hs:1685 TXT3 Line Too Long Warning compiler/prelude/TysPrim.hs:195 TXT3 Line Too Long Warning compiler/prelude/TysPrim.hs:198 TXT3 Line Too Long Warning compiler/prelude/TysPrim.hs:202 TXT3 Line Too Long Warning compiler/prelude/TysWiredIn.hs:110 TXT3 Line Too Long Warning compiler/prelude/TysWiredIn.hs:111 TXT3 Line Too Long Warning compiler/typecheck/TcGenDeriv.hs:2136 TXT3 Line Too Long Warning compiler/typecheck/TcGenDeriv.hs:2138 TXT3 Line Too Long
No Unit Test Coverage
- Build Status
Buildable 24920 Build 61879: [GHC] Linux/amd64: Continuous Integration Build 61878: [GHC] OSX/amd64: Continuous Integration Build 61877: [GHC] Windows/amd64: Continuous Integration Build 61876: arc lint + arc unit
Interesting, did the register allocator ever actually use %ebp? It's mapped to Sp on i386, so I wouldn't expect it to be available for allocation most of the time. Perhaps in a very few places where we're returning from a foreign call and about to load Sp.
I didn't actually observe this. I just noticed this code when debugging and since the Note explicitly mentioned 8-bit registers, I thought it's better to make sure %ebp is also excluded.