1. 04 Mar, 2002 5 commits
  2. 03 Mar, 2002 1 commit
  3. 02 Mar, 2002 6 commits
    • sof's avatar
      [project @ 2002-03-02 18:02:30 by sof] · a249439b
      sof authored
      Urk, code generator assumed reversed info tables
      in its implementation of dataToTag# - broke a
      compiler built unregisterised rather weirdly
      (and only, none of the code in testsuite/ nor
      nofib/ showed up this bug.)
      This commit assumes that unregisterised==
      info_tables_not_next_to_code & calls upon
      a trusty old PrimOps.h macro to locate the tag
      in the info table (the reasons for doing it
      this way is explained in AbsCUtils.lhs
      To help the poor sod who has to debug a break
      like this sometime in the future, I'm trying to
      come up with a repro case smaller than
      ghc/compiler/ -- not yet successful.
      Anyway, this concludes the fixes to the
      unregisterised bits; I hereby claim that it
      is now working again.
    • sof's avatar
      [project @ 2002-03-02 17:51:22 by sof] · 0b7c9ee4
      sof authored
      re-introduce dataToTagzh macro (unreg builds only)
    • sof's avatar
      [project @ 2002-03-02 17:49:42 by sof] · bb22180b
      sof authored
      Add the CPP flags used by an unregisterised build
      when compiling the .h generating utilities herein.
      As was, info table size was wrongly computed in
      the unregisterised case.
    • sof's avatar
      [project @ 2002-03-02 17:46:03 by sof] · ae231767
      sof authored
      Add stg_ut_1_0_unreg_info proto (only)
    • sof's avatar
      [project @ 2002-03-02 17:43:44 by sof] · d07a6e61
      sof authored
      - new utility return address, stg_ut_1_0_unreg_{info,ret}, which
        returns via Sp[1] (assuming R1 is in Sp[0], which it is in
        the unregisterised, no-REG_R1 case.
        The only 'consumer' of this entry point is the implementation
        of PrimOps.takeMVarzh_fast in an unregisterised build.
    • sof's avatar
      [project @ 2002-03-02 17:40:24 by sof] · 2f015a00
      sof authored
      - gcdIntegerIntzh_fast: another primop with mismatched return
      - tidy up PerformTake() for non-REG_R1 case.
      - forkzh_fast and myThreadIdzh_fast: I mistakenly had ThreadId#s
        down as something unboxed; they're not, but unpointed. Update
        primops to use the RET_P() macro upon return instead.
  4. 01 Mar, 2002 5 commits
    • keithw's avatar
      [project @ 2002-03-01 18:28:15 by keithw] · 045fb1b0
      keithw authored
      Addendum to previous commit message:
      We can't tell whether the stg_sel and stg_ap thunks correspond to
      static or dynamic thunks, and it's not worth duplicating them all just
      so the ticky-ticky stats can be correct.  So I have played it safe
      (for my purposes at least!) and counted them all as dynamic.  Yell if
      this is a problem (njn?)
    • keithw's avatar
      [project @ 2002-03-01 18:11:20 by keithw] · ee1aabdc
      keithw authored
      Fix bug in ticky-ticky stats (particularly obvious in
      nofib/imaginary/queens) that was meaning some thunk entries were not
      being counted in ENT_{STATIC,DYN}_THK_ctr.  Specifically, tick the
      counter for the stg_sel and stg_ap thunks, as well as non-standard
      Also add TICK_UPDF_OMITTED into the stg_sel_noupd thunks (there are no
      stg_ap_noupd thunks, or else I would have put it there too).
      Also, fix a bug in the sense of the test for update squeezing when
      printing (or not) ENT_PERM_IND: we don't print out ENT_PERM_IND unless
      update squeezing is turned off, because it may be invalid (see note).
      If someone needs this counter, please just remove the test entirely
      and always print ENT_PERM_IND.
    • simonpj's avatar
      [project @ 2002-03-01 16:53:14 by simonpj] · 06944f8b
      simonpj authored
      Minor bug in float-out
    • simonmar's avatar
      [project @ 2002-03-01 14:20:06 by simonmar] · 43f0ef0d
      simonmar authored
      remove redundant check for size_t
    • simonmar's avatar
      [project @ 2002-03-01 09:47:39 by simonmar] · 8f09c162
      simonmar authored
      Generalise a couple of regexps in the -monly-[23]-regs patching code.
      Should fix problems with gcc 3.0.4.
  5. 28 Feb, 2002 9 commits
    • sof's avatar
      [project @ 2002-02-28 18:54:53 by sof] · 76ad1b30
      sof authored
      stg_gc_unpt_r1_ret: if R1 isn't mapped to a real register,
      keep it on the stack.
      I confess to 'pushing symbols' here a bit, as the exact
      nature (and function) of stg_gc_unpt_r1_info isn't clear
      to me (documentation isn't abundant, for one.) However,
      it will now behave in a manner consistent with what
      the code generator emits in the unregisterised case.
    • keithw's avatar
      [project @ 2002-02-28 18:50:40 by keithw] · f3a251e3
      keithw authored
      Un-rot nofib-analyse, so it compiles with ghc-5.02.2.
      * add a regexp for GNU time 1.7
      * import Html hiding ((!)) now hides Html.! as well as !, so add an
        import qualified Html ((!)) as well.
      * compile Printf with -fvia-c to work around bug in foreign import of
        snprintf (was always printing "0.00" no matter what input given).
    • sof's avatar
      [project @ 2002-02-28 18:45:51 by sof] · fe4844f7
      sof authored
      make sure stdout is flushed; unused arg wibble
    • sof's avatar
      [project @ 2002-02-28 18:44:28 by sof] · 311879d2
      sof authored
      myThreadIdzh_fast: used bogus return convention
    • sof's avatar
      [project @ 2002-02-28 16:25:15 by sof] · dd2e00b5
      sof authored
      Huh? Surely stg_block_{take,put}mvar ought to be pushing info pointers and not direct return addresses
    • simonpj's avatar
      [project @ 2002-02-28 12:17:19 by simonpj] · 469c3333
      simonpj authored
      	Fix a rather obscure bug in tcGen
      This bug concerns deciding when a type variable "escapes",
      and hence we can't generalise it.  Our new subsumption-checking
      machinery for higher-ranked types requires a slightly
      more general approach than I had before.  The main excitement
      is in TcUnify.checkSigTyVars and its friends.
      As usual, I moved functions around and cleaned things up a bit;
      hence the multi-module commit.
    • simonmar's avatar
      [project @ 2002-02-28 10:15:47 by simonmar] · 9c3cdff0
      simonmar authored
      module names are allowed to contain '.' these days.
    • sof's avatar
      [project @ 2002-02-28 08:53:58 by sof] · f33a70de
      sof authored
      - gcdIntzh_fast, cmpIntegerIntzh_fast, cmpIntegerzh_fast,
        integer2Intzh_fast, and integer2Wordzh_fast all used the
        unboxed tuple return convention, which isn't quite right
        since they're just returning unboxed values. Fixed.
      - similarly for forkzh_fast, it was using an unboxed value
        return convention, ought to be doing an unboxed tuple
      Both of these broke the unregisterised build -- it still not
      sane, more debugging to be done.
    • sof's avatar
      [project @ 2002-02-28 08:53:13 by sof] · 685c0e46
      sof authored
  6. 27 Feb, 2002 10 commits
  7. 26 Feb, 2002 4 commits