1. 28 Aug, 2014 11 commits
  2. 27 Aug, 2014 2 commits
  3. 26 Aug, 2014 1 commit
    • Sergei Trofimovich's avatar
      UNREG: fix emission of large Integer literals in C codegen · 43f1b2ec
      Sergei Trofimovich authored
      Summary:
      On amd64/UNREG build there is many failing tests trying
      to deal with 'Integer' types.
      
      Looking at 'integerConversions' test I've observed
      invalid C code generated by GHC.
      
      Cmm code
          CInt a = -1; (a == -1)
      yields 'False' with optimisations enabled via the following C code:
          StgWord64 a = (StgWord32)0xFFFFffffFFFFffffu; (a == 0xFFFFffffFFFFffffu)
      
      The patch fixes it by shrinking emitted literals to required sizes:
          StgWord64 a = (StgWord32)0xFFFFffffu; (a == 0xFFFFffffu)
      
      Thanks to Reid Barton for tracking down and fixing the issue.
      Signed-off-by: default avatarSergei Trofimovich <slyfox@gentoo.org>
      
      Test Plan: validate on UNREG build (amd64, x86)
      
      Reviewers: simonmar, rwbarton, austin
      
      Subscribers: hvr, simonmar, ezyang, carter
      
      Differential Revision: https://phabricator.haskell.org/D173
      43f1b2ec
  4. 25 Aug, 2014 10 commits
  5. 24 Aug, 2014 1 commit
  6. 23 Aug, 2014 5 commits
  7. 22 Aug, 2014 8 commits
  8. 21 Aug, 2014 1 commit
  9. 20 Aug, 2014 1 commit