Re: Mysterious DEC utterances.

1997-07-24 Thread Alex Ferguson


Sven Panne on:
  Warning: Linking some objects which contain exception information sections
  and some which do not. This may cause fatal runtime exception 
handling
  problems (last obj encountered without exceptions was 
main/LoopHack.o).

 I don't speak DECish too fluently, but here's my humble guess:
 Under arcane circumstances, linking gcc-compiled code on DEC-Unix 3.2
 produces the above warning. It's annoying, but it doesn't hurt (at least
 apart from aesthetics :-) . 

I can now concur, as the rest of the build went swimmingly.  Perhaps
Josh's problems were 3.2 specific...  I don't know if 3.2 and 4.0
are alleged to be object code compatible -- if so, and anyone's
desparate enough to try, I could perhaps arrange to send them a built
hsc.

More utterances:  I also note the following message from later in
said build.  I can't recall having seen any such things things before,
though perhaps I either didn't do builds on other platforms with
-dshow-passes set (or just didn't notice the output if I did).  I assume
it too is benign, just mildly Mysterious to we mere mortals.

Cheers,
Alex.
--

rm -f src/PosixUtil.p_o ; if [ ! -d src/PosixUtil ]; then mkdir src/PosixUtil ; 
else exit 0; fi; find src/PosixUtil -name '*.p_o' -print | xargs rm -f 
__rm_food;
../../ghc/driver/ghc -H50M -K8M -split-objs -odir src/PosixUtil  -hisuf p_hi 
-recomp -isrc -cpp -fvia-C -fglasgow-exts -dcore-lint -prof 
'-#include"cbits/libposix.h"' -monly-3-regs -dshow-passes -c src/PosixUtil.lhs 
-o src/PosixUtil.p_o -osuf p_o
ghc: WARNING: splitting objects when profiling will *BREAK* if any _scc_s are 
present!
*** Reader:
*** Renamer:
*** TypeCheck:
*** DeSugar:
*** Core2Core:
*** Core2Core: Simplify
*** Core2Stg:
*** Stg2Stg:


*** Core Lint result of TidyCorePgm


*** Core Lint result of Simplify (3)
*** CodeGen:
ghc: module version changed to 1; reason: no old .hi file



Re: Mysterious DEC utterances.

1997-07-23 Thread Sven Panne

Alex Ferguson wrote:
 [...]
 I'm using OSF 3.2, however, so your kilometerage may vary considerably...
 [...]
 ghc-0.29 -o hsc [ridiculously long argument list removed]
 /bin/ld:
 Warning: Linking some objects which contain exception information sections
 and some which do not. This may cause fatal runtime exception handling
 problems (last obj encountered without exceptions was main/LoopHack.o).

I don't speak DECish too fluently, but here's my humble guess:
Under arcane circumstances, linking gcc-compiled code on DEC-Unix 3.2
produces the above warning. It's annoying, but it doesn't hurt (at least
apart from aesthetics :-) .  Anyway, I digged up an old gcc patch from
long forgotten sources and appended it to this mail.

BTW, stripping executables with the GNU-strip makes some trouble
on our DECs. Wise comments from a DEC-grandmaster would be greatly
appreciated...

Much fun recompiling gcc!  :-]


(My first mailing attempt failed because vanuata.dcs.gla.ac.uk and my
 Netscape apparently didn't like each other, having a dispute about
 their MIME-dialects. So here's good ol' ASCII... :-(

-- SNIP -- SNIP -- gcc-2.7.2/config/alpha/osf32.h -- SNIP -- SNIP
/* Definitions of target machine for GNU compiler, for DEC Alpha.
   Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
   Contributed by Richard Kenner ([EMAIL PROTECTED])

This file is part of GNU CC.

GNU CC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.

GNU CC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU CC; see the file COPYING.  If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.  */


#include "alpha/osf2.h"

/* In OSF 3.2, the loader issues warnings about possible exception handling
   problems in object files which do not define a .text section and
   which define the symbols `gcc2_compiled.' and `__gnu_compiled_c'
   without any section specification. The following is a work around
   and I do not know if it really works right! But at least it
   suppresses the nasty loader warnings. */

#if defined (EXTRA_SECTIONS)
#undef  EXTRA_SECTIONS
#endif
#define EXTRA_SECTIONS  readonly_data, local_readonly_const_data

#if defined (EXTRA_SECTION_FUNCTIONS)
#undef EXTRA_SECTION_FUNCTIONS
#endif
#define EXTRA_SECTION_FUNCTIONS \
void\
literal_section ()  \
{   \
  if (in_section != readonly_data)  \
{   \
  static int firsttime = 1; \
\
  fprintf (asm_out_file, "%s\n", READONLY_DATA_SECTION_ASM_OP); \
  if (firsttime)\
{   \
  firsttime = 0;\
  ASM_OUTPUT_DOUBLE_INT (asm_out_file, const0_rtx); \
}   \
\
  in_section = readonly_data;   \
}   \
}   \
void\
rconst_section ()   \
{   \
  if (in_section != local_readonly_const_data)  \
{   \
  fprintf (asm_out_file, ".rconst\n");  \
  in_section = local_readonly_const_data;   \
}   \
}   \

#if defined (ASM_IDENTIFY_GCC)
#undef  ASM_IDENTIFY_GCC
#endif
#define ASM_IDENTIFY_GCC(FILE)  \
   do { rconst_section ();  \
fprintf(FILE, "gcc2_compiled.:\n");} while(0)

#if defined (ASM_IDENTIFY_GCC)
#undef  ASM_IDENTIFY_LANGUAGE
#endif
#define ASM_IDENTIFY_LANGUAGE(FILE) \
   do { rconst_section ();  \
fprintf (FILE, "__gnu_compiled_%s:\n", lang_identify ());} while(0)


-- SNIP -- SNIP -- 

Mysterious DEC utterances.

1997-07-22 Thread Alex Ferguson


Just in case the following throws any light on Josh Burdick's build
problems on an alpha, I got the following message, when my build
here eventually got as far as hsc.  I'm using OSF 3.2, however, so
your kilometerage may vary considerably...

Good luck,
Alex.

Spam alert: but honest, it's only one command!

ghc-0.29 -o hsc -H50M -K8M -cpp -fhaskell-1.3 -fglasgow-exts -DCOMPILING_GHC 
-Rghc-timing -I. -IcodeGen -InativeGen -Iparser -iutils -ibasicTypes -itypes 
-ihsSyn -iprelude -irename -itypecheck -ideSugar -icoreSyn -ispecialise 
-isimplCore -istranal -istgSyn -isimplStg -icodeGen -iabsCSyn -imain -ireader 
-iprofiling -iparser -inativeGen -fomit-derived-read -fomit-reexported-instances 
-DOMIT_DEFORESTER -no-link-chkparser/U_binding.o  parser/U_constr.o  
parser/U_either.o  parser/U_entidt.o  parser/U_list.o  parser/U_literal.o  
parser/U_maybe.o  parser/U_pbinding.o  parser/U_qid.o  parser/U_tree.o  
parser/U_ttype.o  utils/Argv.o  utils/Bag.o  utils/BitSet.o  utils/Digraph.o  
utils/FastString.o  utils/FiniteMap.o  utils/ListSetOps.o  utils/MatchEnv.o  
utils/Maybes.o  utils/OrdList.o  utils/Outputable.o  utils/Pretty.o  
utils/PrimPacked.o  utils/SST.o  utils/StringBuffer.o  utils/UniqFM.o  
utils/UniqSet.o  utils/Util.o  basicTypes/BasicTypes.o  basicTypes/Demand.o  
basicTypes/FieldLabel.o  basicTypes/Id.o  basicTypes/IdInfo.o  
basicTypes/IdUtils.o  basicTypes/Literal.o  basicTypes/Name.o  
basicTypes/PprEnv.o  basicTypes/PragmaInfo.o  basicTypes/SrcLoc.o  
basicTypes/UniqSupply.o  basicTypes/Unique.o  types/Class.o  types/Kind.o  
types/PprType.o  types/TyCon.o  types/TyVar.o  types/Type.o  types/Usage.o  
hsSyn/HsBasic.o  hsSyn/HsBinds.o  hsSyn/HsCore.o  hsSyn/HsDecls.o  
hsSyn/HsExpr.o  hsSyn/HsImpExp.o  hsSyn/HsMatches.o  hsSyn/HsPat.o  
hsSyn/HsPragmas.o  hsSyn/HsSyn.o  hsSyn/HsTypes.o  prelude/PrelInfo.o  
prelude/PrelMods.o  prelude/PrelVals.o  prelude/PrimOp.o  prelude/PrimRep.o  
prelude/StdIdInfo.o  prelude/TysPrim.o  prelude/TysWiredIn.o  rename/Rename.o  
rename/RnBinds.o  rename/RnEnv.o  rename/RnExpr.o  rename/RnHsSyn.o  
rename/RnIfaces.o  rename/RnMonad.o  rename/RnNames.o  rename/RnSource.o  
typecheck/Inst.o  typecheck/TcBinds.o  typecheck/TcClassDcl.o  
typecheck/TcDefaults.o  typecheck/TcDeriv.o  typecheck/TcEnv.o  
typecheck/TcExpr.o  typecheck/TcGRHSs.o  typecheck/TcGenDeriv.o  
typecheck/TcHsSyn.o  typecheck/TcIfaceSig.o  typecheck/TcInstDcls.o  
typecheck/TcInstUtil.o  typecheck/TcKind.o  typecheck/TcMatches.o  
typecheck/TcModule.o  typecheck/TcMonad.o  typecheck/TcMonoType.o  
typecheck/TcPat.o  typecheck/TcSimplify.o  typecheck/TcTyClsDecls.o  
typecheck/TcTyDecls.o  typecheck/TcType.o  typecheck/Unify.o  deSugar/Desugar.o  
deSugar/DsBinds.o  deSugar/DsCCall.o  deSugar/DsExpr.o  deSugar/DsGRHSs.o  
deSugar/DsHsSyn.o  deSugar/DsListComp.o  deSugar/DsMonad.o  deSugar/DsUtils.o  
deSugar/Match.o  deSugar/MatchCon.o  deSugar/MatchLit.o  coreSyn/AnnCoreSyn.o  
coreSyn/CoreLift.o  coreSyn/CoreLint.o  coreSyn/CoreSyn.o  coreSyn/CoreUnfold.o  
coreSyn/CoreUtils.o  coreSyn/FreeVars.o  coreSyn/PprCore.o  specialise/SpecEnv.o 
 specialise/SpecUtils.o  specialise/Specialise.o  simplCore/AnalFBWW.o  
simplCore/BinderInfo.o  simplCore/ConFold.o  simplCore/FloatIn.o  
simplCore/FloatOut.o  simplCore/FoldrBuildWW.o  simplCore/LiberateCase.o  
simplCore/MagicUFs.o  simplCore/OccurAnal.o  simplCore/SAT.o  
simplCore/SATMonad.o  simplCore/SetLevels.o  simplCore/SimplCase.o  
simplCore/SimplCore.o  simplCore/SimplEnv.o  simplCore/SimplMonad.o  
simplCore/SimplPgm.o  simplCore/SimplUtils.o  simplCore/SimplVar.o  
simplCore/Simplify.o  stranal/SaAbsInt.o  stranal/SaLib.o  stranal/StrictAnal.o  
stranal/WorkWrap.o  stranal/WwLib.o  stgSyn/CoreToStg.o  stgSyn/StgLint.o  
stgSyn/StgSyn.o  simplStg/LambdaLift.o  simplStg/SimplStg.o  simplStg/StgStats.o 
 simplStg/StgVarInfo.o  simplStg/UpdAnal.o  codeGen/CgBindery.o  
codeGen/CgCase.o  codeGen/CgClosure.o  codeGen/CgCompInfo.o  codeGen/CgCon.o  
codeGen/CgConTbls.o  codeGen/CgExpr.o  codeGen/CgHeapery.o  
codeGen/CgLetNoEscape.o  codeGen/CgMonad.o  codeGen/CgRetConv.o  
codeGen/CgStackery.o  codeGen/CgTailCall.o  codeGen/CgUpdate.o  
codeGen/CgUsages.o  codeGen/ClosureInfo.o  codeGen/CodeGen.o  codeGen/SMRep.o  
absCSyn/AbsCSyn.o  absCSyn/AbsCUtils.o  absCSyn/CLabel.o  absCSyn/CStrings.o  
absCSyn/Costs.o  absCSyn/HeapOffs.o  absCSyn/PprAbsC.o  main/CmdLineOpts.o  
main/Constants.o  main/ErrUtils.o  main/Main.o  main/MkIface.o  reader/Lex.o  
reader/PrefixSyn.o  reader/PrefixToHs.o  reader/RdrHsSyn.o  reader/ReadPrefix.o  
profiling/CostCentre.o  profiling/SCCfinal.o  parser/UgenAll.o  
parser/UgenUtil.o  nativeGen/AbsCStixGen.o  nativeGen/AsmCodeGen.o  
nativeGen/AsmRegAlloc.o  nativeGen/MachCode.o  nativeGen/MachMisc.o  
nativeGen/MachRegs.o  nativeGen/PprMach.o  nativeGen/RegAllocInfo.o  
nativeGen/Stix.o  nativeGen/StixInfo.o  nativeGen/StixInteger.o  
nativeGen/StixMacro.o  nativeGen/StixPrim.o  rename/ParseIface.o