[m-rev.] for review: update README.IRIX-5

Fergus Henderson fjh at cs.mu.OZ.AU
Wed Oct 16 18:20:15 AEST 2002


Estimated hours taken: 0.75
Branches: main

README.IRIX-5:
	Update in preparation for the new release.
	Non-local gotos are not supported anymore.

Workspace: /home/ceres/fjh/ws-ceres2/mercury
Index: README.IRIX-5
===================================================================
RCS file: /home/mercury1/repository/mercury/README.IRIX-5,v
retrieving revision 1.5
diff -u -d -c -r1.5 README.IRIX-5
cvs diff: conflicting specifications of output style
*** README.IRIX-5	2 Oct 1995 09:33:13 -0000	1.5
--- README.IRIX-5	5 Oct 2002 09:18:33 -0000
***************
*** 1,36 ****
  
  On Irix 5, it is not possible to use both gcc's non-local gotos and
! position-independent code (which is required for shared libraries)
! The Mercury auto-configuration script will usually resolve this problem
! by disabling the use of gcc's non-local gotos.  That works fine, but
! the resulting `reg.gc' grade compiler is considerably less efficient
! that the `asm_fast.gc' grade compiler that uses non-local gotos. 
! It's about 30% larger (3.3M vs 2.5M stripped), and probably about
! 20-100% slower (at a very rough guess).
  
! To use non-local gotos, your Irix machine needs to have the nonshared
! versions of the C standard library installed in /usr/lib/nonshared,
! and you need also need a version of `libgcc.a' that has been compiled
! with `-mno-abicalls' in /usr/lib/nonshared.  To create that, you need
! to obtain a copy of the gcc source distribution, replace the `-g1' with
! `-mno-abicalls' in the definition of LIBGCC2_CFLAGS in the Makefile in
! the gcc source directory, type `make libgcc.a', and then copy libgcc.a
! to /usr/lib/nonshared.  (To use a directory other than
! /usr/lib/nonshared for libgcc.a, you must set the environment
! variable MERCURY_NONSHARED_LIB_DIR to the appropriate directory before
! running `configure'.)
  
! Once you have done that, you can reinstall Mercury;
! `configure' should detect that using gcc labels now works. 
! (If it doesn't, examine config.log to work out what went wrong.) 
! `configure' will also disable shared libraries, so that
! the installation process doesn't attempt to build shared
! versions of the `asm_fast.gc' grade libraries (and others).
! However, the linker will still pick up the shared libraries
! for `reg.gc' and the other grades installed initially
! (before creating a nonshared libgcc.a).
! The default grade will be set to `reg.gc', since shared libraries
! give you small executables and short link times.  But for
! large programs, you should set GRADE=asm_fast.gc in your Mmake file
! for considerably improved performance.
  
--- 1,20 ----
  
+ We have not been able to test the Irix 5 port since March 2000,
+ due to lack of access to an Irix 5 machine.
+ 
  On Irix 5, it is not possible to use both gcc's non-local gotos and
! position-independent code (which is required for shared libraries).
! The Mercury auto-configuration script should resolve this problem
! by disabling the use of gcc's non-local gotos (e.g. the `asm_fast.gc'
! grade).
  
! Use of non-local gotos on Irix 5 was supported in previous releases of
! Mercury, but now we recommend using the hlc.gc grade instead.
  
! If you install from the source distribution, the initial version of the
! compiler will use grade reg.gc.  You can get a faster compiler by
! adding the directory for the installed mmc to your PATH and then
! reinstalling from the source distribution.  The second time around,
! the configure script will detect that a working mmc is in your PATH
! and will build the compiler in grade hlc.gc rather than grade reg.gc.
  

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list