Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : unboxed-tuple-arguments

http://hackage.haskell.org/trac/ghc/changeset/7a64ef7dca2e3a221c4ade84147dceac5df02c44

>---------------------------------------------------------------

commit 7a64ef7dca2e3a221c4ade84147dceac5df02c44
Author: Max Bolingbroke <[email protected]>
Date:   Sun Mar 4 16:11:47 2012 +0000

    Support code generation for unboxed-tuple function arguments
    
    This has the following knock-on effects:
      * We can remove special case code for void arguments, and treat them
        as nullary unboxed tuples
      * The subkind hierarchy is vastly simplified (no UbxTupleKind or ArgKind)
      * Various relaxed type checks in typechecker, 'foreign import prim' etc
      * All case binders may be live
      * No VoidRep

 compiler/basicTypes/BasicTypes.lhs |    5 +
 compiler/basicTypes/DataCon.lhs    |    2 +-
 compiler/basicTypes/Id.lhs         |    2 +-
 compiler/basicTypes/MkId.lhs       |    2 +-
 compiler/cmm/CLabel.hs             |    8 +-
 compiler/cmm/CmmUtils.hs           |   29 ++--
 compiler/codeGen/CgBindery.lhs     |  391 ++++++++++++++++++++----------------
 compiler/codeGen/CgCallConv.hs     |   66 +++----
 compiler/codeGen/CgCase.lhs        |  172 ++++++++--------
 compiler/codeGen/CgClosure.lhs     |   73 ++++---
 compiler/codeGen/CgCon.lhs         |   34 ++--
 compiler/codeGen/CgExpr.lhs        |   54 +++---
 compiler/codeGen/CgForeignCall.hs  |   28 ++--
 compiler/codeGen/CgHeapery.lhs     |   24 +--
 compiler/codeGen/CgInfoTbls.hs     |   26 ++-
 compiler/codeGen/CgLetNoEscape.lhs |    3 +-
 compiler/codeGen/CgParallel.hs     |    6 +-
 compiler/codeGen/CgPrimOp.hs       |    6 +-
 compiler/codeGen/CgStackery.lhs    |    4 +-
 compiler/codeGen/CgTailCall.lhs    |   70 ++++----
 compiler/codeGen/CgTicky.hs        |   12 +-
 compiler/codeGen/CgUtils.hs        |   42 ++++-
 compiler/codeGen/ClosureInfo.lhs   |  113 ++++++-----
 compiler/codeGen/StgCmm.hs         |    8 +-
 compiler/codeGen/StgCmmBind.hs     |  119 ++++++------
 compiler/codeGen/StgCmmClosure.hs  |   78 ++++----
 compiler/codeGen/StgCmmCon.hs      |   43 ++--
 compiler/codeGen/StgCmmEnv.hs      |  176 +++++++++-------
 compiler/codeGen/StgCmmExpr.hs     |  118 ++++++-----
 compiler/codeGen/StgCmmForeign.hs  |   17 +-
 compiler/codeGen/StgCmmHeap.hs     |   32 +---
 compiler/codeGen/StgCmmLayout.hs   |  119 +++++------
 compiler/codeGen/StgCmmMonad.hs    |   32 +++-
 compiler/codeGen/StgCmmPrim.hs     |   28 +--
 compiler/codeGen/StgCmmTicky.hs    |   16 +-
 compiler/codeGen/StgCmmUtils.hs    |   29 ++--
 compiler/coreSyn/CoreLint.lhs      |   20 +--
 compiler/deSugar/DsForeign.lhs     |   33 ++--
 compiler/ghci/ByteCodeAsm.lhs      |   32 ++--
 compiler/ghci/ByteCodeGen.lhs      |  106 ++++++-----
 compiler/ghci/ByteCodeInstr.lhs    |    4 +-
 compiler/ghci/ByteCodeItbls.lhs    |    2 +-
 compiler/ghci/LibFFI.hsc           |   24 +-
 compiler/ghci/RtClosureInspect.hs  |  146 ++++++++++----
 compiler/main/InteractiveEval.hs   |    3 +-
 compiler/parser/ParserCore.y       |    2 +-
 compiler/prelude/PrelNames.lhs     |    5 +-
 compiler/prelude/PrimOp.lhs        |   19 +-
 compiler/prelude/TysPrim.lhs       |   94 ++++------
 compiler/prelude/TysWiredIn.lhs    |    4 +-
 compiler/simplCore/CSE.lhs         |   17 +--
 compiler/stgSyn/StgSyn.lhs         |    2 +-
 compiler/typecheck/TcBinds.lhs     |    4 +-
 compiler/typecheck/TcDeriv.lhs     |    2 +-
 compiler/typecheck/TcExpr.lhs      |    4 +-
 compiler/typecheck/TcHsType.lhs    |    8 +-
 compiler/typecheck/TcInteract.lhs  |    4 +
 compiler/typecheck/TcMType.lhs     |   59 ++----
 compiler/typecheck/TcPat.lhs       |   31 +---
 compiler/typecheck/TcSimplify.lhs  |    4 +-
 compiler/typecheck/TcType.lhs      |   30 +--
 compiler/typecheck/TcUnify.lhs     |    5 +-
 compiler/types/Kind.lhs            |   49 +----
 compiler/types/TyCon.lhs           |   24 +--
 compiler/types/Type.lhs            |   26 ++-
 compiler/types/TypeRep.lhs         |    6 +-
 compiler/utils/Util.lhs            |   12 +-
 67 files changed, 1404 insertions(+), 1364 deletions(-)


Diff suppressed because of size. To see it, use:

    git show 7a64ef7dca2e3a221c4ade84147dceac5df02c44

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to