diff options
| author | Simon Marlow <marlowsd@gmail.com> | 2011-12-19 11:53:42 +0000 |
|---|---|---|
| committer | Simon Marlow <marlowsd@gmail.com> | 2011-12-19 12:04:47 +0000 |
| commit | b4018aaaebe4250e78cdcb245466fdcce8918abf (patch) | |
| tree | 617f82fafd882a4999bbc0eb05ac3f86a6b747ac | |
| parent | 24b313767cb07ebf72af1a9b12e98fbf29d79e49 (diff) | |
| download | haskell-b4018aaaebe4250e78cdcb245466fdcce8918abf.tar.gz | |
Fix alignment in the CostCentre struct (#5710)
| -rw-r--r-- | compiler/codeGen/CgProf.hs | 2 | ||||
| -rw-r--r-- | compiler/codeGen/StgCmmProf.hs | 16 | ||||
| -rw-r--r-- | includes/rts/prof/CCS.h | 2 |
3 files changed, 10 insertions, 10 deletions
diff --git a/compiler/codeGen/CgProf.hs b/compiler/codeGen/CgProf.hs index a2e40d0f78..296dd62818 100644 --- a/compiler/codeGen/CgProf.hs +++ b/compiler/codeGen/CgProf.hs @@ -178,8 +178,8 @@ emitCostCentreDecl cc = do label, -- char *label, modl, -- char *module, loc, -- char *srcloc, + zero64, -- StgWord64 mem_alloc zero, -- StgWord time_ticks - zero64, -- StgWord64 mem_alloc is_caf, -- StgInt is_caf zero -- struct _CostCentre *link ] diff --git a/compiler/codeGen/StgCmmProf.hs b/compiler/codeGen/StgCmmProf.hs index 88031dce48..6d16f012b3 100644 --- a/compiler/codeGen/StgCmmProf.hs +++ b/compiler/codeGen/StgCmmProf.hs @@ -223,14 +223,14 @@ emitCostCentreDecl cc = do -- All cost centres will be in the main package, since we -- don't normally use -auto-all or add SCCs to other packages. -- Hence don't emit the package name in the module here. - ; let lits = [ zero, -- StgInt ccID, - label, -- char *label, - modl, -- char *module, - loc, -- char *srcloc, - zero, -- StgWord time_ticks - zero64, -- StgWord64 mem_alloc - is_caf, -- StgInt is_caf - zero -- struct _CostCentre *link + ; let lits = [ zero, -- StgInt ccID, + label, -- char *label, + modl, -- char *module, + loc, -- char *srcloc, + zero64, -- StgWord64 mem_alloc + zero, -- StgWord time_ticks + is_caf, -- StgInt is_caf + zero -- struct _CostCentre *link ] ; emitDataLits (mkCCLabel cc) lits } diff --git a/includes/rts/prof/CCS.h b/includes/rts/prof/CCS.h index 36404aaf91..3639e49aa7 100644 --- a/includes/rts/prof/CCS.h +++ b/includes/rts/prof/CCS.h @@ -37,8 +37,8 @@ typedef struct _CostCentre { char * srcloc; // used for accumulating costs at the end of the run... - StgWord time_ticks; StgWord64 mem_alloc; // align 8 (Note [struct alignment]) + StgWord time_ticks; StgInt is_caf; // non-zero for a CAF cost centre |
