
#11538: Wrong constants in LL code for big endian targets -------------------------------------+------------------------------------- Reporter: wereHamster | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.1 (LLVM) | Keywords: | Operating System: Unknown/Multiple Architecture: mips | Type of failure: Building GHC | failed Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- I'm trying to compile GHC for a big endian MIPS target (MIPS 24Kc, Atheros AR9330). The generated code for the `negateFloat` function has the following line: `%ln3uf = fsub float 0x0000000000000080, %ln3ue` But the constant should be `0x8000000000000000` instead. See todays discussion in #ghc between wereHamster and rwbarton for more details and possible hints how/where to fix this. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11538 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler