From 3eb443b6b92687d738be0253663860acf0928aa3 Mon Sep 17 00:00:00 2001 From: David Terei Date: Sun, 11 Dec 2011 12:15:39 -0800 Subject: Fix comment in CgMonad --- compiler/codeGen/CgMonad.lhs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'compiler/codeGen') diff --git a/compiler/codeGen/CgMonad.lhs b/compiler/codeGen/CgMonad.lhs index 996ac35a67..302d8ac652 100644 --- a/compiler/codeGen/CgMonad.lhs +++ b/compiler/codeGen/CgMonad.lhs @@ -299,12 +299,11 @@ data HeapUsage = } \end{code} -The heap high water mark is the larger of virtHp and hwHp. The latter is -only records the high water marks of forked-off branches, so to find the -heap high water mark you have to take the max of virtHp and hwHp. Remember, -virtHp never retreats! - -Note Jan 04: ok, so why do we only look at the virtual Hp?? +virtHp keeps track of the next location to allocate an object at. realHp keeps +track of what the Hp STG register actually points to. The reason these aren't +always the same is that we want to be able to move the realHp in one go when +allocating numerous objects to save having to bump it each time. virtHp we do +bump each time but it doesn't create corresponding inefficient machine code. \begin{code} heapHWM :: HeapUsage -> VirtualHpOffset -- cgit v1.2.1