[comp.lang.perl] Perl 4.0 on Ultrix DECStation

ted@evi.com (Ted Stefanik) (02/23/91)

Unlike the previous two posters, I did not get 4.0 Beta to work 100% right
away by just following the installation instructions.

Important Conditions:

          OS: ULTRIX 3.1 (UWS V2.1 Rev 14)
    Hardware: DECStation 2100
    Compiler: cc (MIPS ccom1.31)
Optimization: -O -Olimit 3000
      Parser: bison -v
      Malloc: perl's malloc
  Exceptions: Disabled WAITPID, didn't optimize perly.o
   Configure: All defaults except those listed above.
              The "test -x" failure causes slight messiness during Configure.

Test Failure:

   op/eval........FAILED on test 9
   op/s...........FAILED on test 40
   lib/big........../lib/bigint.pl did not return a true value at ./lib/big.t
                    line 2.
                  FAILED on test 0

Solution: Disabled optimization on perl.c.  Then got another Test Failure:

   lib/big........FAILED on test 172
   Failed 1 test.
   *** Error code 9 (ignored)
   Out of memory!

Solution: Disabled optimization on cmd.c.

Now 4.0 Beta passes all tests.

Notes:
   1) I found that it is fine to allow optimization when compiling perly.c.
   2) The lib/big stuff always failed on my Perl 3.0 versions too, but
      since I don't use the bigint package, I never bothered tracing it
      down to a C optimizer bug.

meissner@osf.org (Michael Meissner) (02/26/91)

In article <1991Feb23.041953.29490@uvaarpa.Virginia.EDU> ted@evi.com
(Ted Stefanik) writes:

| Important Conditions:
| 
|           OS: ULTRIX 3.1 (UWS V2.1 Rev 14)
|     Hardware: DECStation 2100
|     Compiler: cc (MIPS ccom1.31)
| Optimization: -O -Olimit 3000
|       Parser: bison -v
|       Malloc: perl's malloc
|   Exceptions: Disabled WAITPID, didn't optimize perly.o
|    Configure: All defaults except those listed above.
|               The "test -x" failure causes slight messiness during Configure.
| 
| Test Failure:
| 
|    op/eval........FAILED on test 9
|    op/s...........FAILED on test 40
|    lib/big........../lib/bigint.pl did not return a true value at ./lib/big.t
|                     line 2.
|                   FAILED on test 0
| 
| Solution: Disabled optimization on perl.c.  Then got another Test Failure:
| 
|    lib/big........FAILED on test 172
|    Failed 1 test.
|    *** Error code 9 (ignored)
|    Out of memory!
| 
| Solution: Disabled optimization on cmd.c.
| 
| Now 4.0 Beta passes all tests.
| 
| Notes:
|    1) I found that it is fine to allow optimization when compiling perly.c.
|    2) The lib/big stuff always failed on my Perl 3.0 versions too, but
|       since I don't use the bigint package, I never bothered tracing it
|       down to a C optimizer bug.

Another way to 'solve' this problem is to use my patches to GCC (which
provide full debug support and better omit frame pointer code).  In
normal circumstances, GCC produces slightly slower code than the MIPS
compiler, but it seems to not have the nasty optimizer bugs that PERL
has found in some of the MIPS compiler revisions.  Of course the fact
that I use PERL as a regression suite for new revisions of GCC with
full optimization (-O, -fomit-frame-pointer, -fstrength-reduce, and
-finline-functions) has nothing to do with it :-)

At present, 1.37.1 patches are available for anonymous FTP on
foobar.colorado.edu, and the 1.39 patches should be there shortly.
Send me mail if you want to be on my beta list.
--
Michael Meissner	email: meissner@osf.org		phone: 617-621-8861
Open Software Foundation, 11 Cambridge Center, Cambridge, MA, 02142

Considering the flames and intolerance, shouldn't USENET be spelled ABUSENET?