X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2FNOTES;h=e5359598475b4953c358dffba42a98d6d030dcf4;hb=c685ccf47413f070a85c4b739d9d7cc73e6f38e6;hp=4c2b7024d7a7e7113226b2e8812f1210b0415c4e;hpb=5e3f005d3012472e422d4ffd7dca5c21a80fca80;p=ghc-hetmet.git diff --git a/ghc/compiler/NOTES b/ghc/compiler/NOTES index 4c2b702..e535959 100644 --- a/ghc/compiler/NOTES +++ b/ghc/compiler/NOTES @@ -1,5 +1,50 @@ -* Can a scoped type variable denote a type scheme? +*** unexpected failure for jtod_circint(opt) + + New back end thoughts + +----------------------------------------------------------------------------- +Codegen notes + +* jumps to ImpossibleBranch should be removed. + +* Profiling: + - when updating a closure with an indirection to a function, + we should make a permanent indirection. + + - check that we're bumping the scc count appropriately + +* check perf & binary sizes against the HEAD + +----------------------------------------------------------------------------- +C backend notes + +* use STGCALL macros for foreign calls (doesn't look like volatile regs + are handled properly at the mo). + +----------------------------------------------------------------------------- +Cmm parser notes + +* switches + +* need to cater for unexported procedures/info tables? + +* We should be able to get rid of entry labels, use info labels only. + - we need a %ENTRY_LBL(info_lbl) macro, so that instead of + JMP_(foo_entry) we can write jump %ENTRY_LBL(foo_info). + +----------------------------------------------------------------------------- + +* Move arg-descr from LFInfo to ClosureInfo? + But: only needed for functions + +* Move all of CgClosure.link_caf into NewCaf, and newDynCaf + +* If the case binder is dead, and the constr is nullary, + do we need to assign to Node? + + +------------------------- * Relation between separate type sigs and pattern type sigs f :: forall a. a->a f :: b->b = e -- No: monomorphic