[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gm2] Tru64/Alpha and Freebsd/i386
From: |
Gaius Mulley |
Subject: |
Re: [Gm2] Tru64/Alpha and Freebsd/i386 |
Date: |
13 Jan 2006 12:31:52 +0000 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.4 |
Michael Lambert <address@hidden> writes:
> Hi Gaius,
>
> I've had some success with today's CVS under Tru64 v5.1 on an Alpha and
> under FreeBSD 4.11 on an i386.
Hi Michael,
excellent stuff, thanks for reporting your tests - I'll add them to
the web page.
> Both of them require that I do a 'make SHELL=<path>/bash ...' as
> gm2/tools-src/createUlmSys does not work with the Bourne or Korn shells
> (list support is different in the Tru64 Korn shell and lacking in the
> Bourne shell). There may be some other bash dependencies following that
> one.
> Tru64:
>
> I had to add '<build_dir>/gcc' to the path. I didn't track down
> why--later stages of a gcc build might have broken too, I suspect.
>
> All regressions passed with the following diffs (no -u option on diff):
>
> ==========
> % diff -c gm2/cpp/pass/subaddr.mod.dist gm2/cpp/pass/subaddr.mod
> *** gm2/cpp/pass/subaddr.mod.dist Wed Jan 11 08:24:56 2006
> --- gm2/cpp/pass/subaddr.mod Wed Jan 11 13:16:12 2006
> ***************
> *** 22,28 ****
> x, y: ADDRESS;
> i : CARDINAL;
> BEGIN
> ! #if !defined(__x86_64)
> i := CARDINAL(x - y)
> #endif
> END subaddr.
> --- 22,28 ----
> x, y: ADDRESS;
> i : CARDINAL;
> BEGIN
> ! #if !(defined(__x86_64) || (defined(__alpha__) && defined(__arch64__)))
> i := CARDINAL(x - y)
> #endif
> END subaddr.
> % diff -c gm2/iso/pass/realbitscast.mod.dist
> gm2/iso/pass/realbitscast.mod
> *** gm2/iso/pass/realbitscast.mod.dist Wed Jan 11 08:24:57 2006
> --- gm2/iso/pass/realbitscast.mod Wed Jan 11 12:28:28 2006
> ***************
> *** 25,33 ****
> BITS96 = SET OF [0..95] ;
> REAL32 = SHORTREAL;
> REAL64 = REAL;
> ! #if !defined(__sparc__) && !defined(__x86_64) && !defined(__ppc__)
> REAL96 = LONGREAL ; (* on the __sparc__ SIZE(LONGREAL) =
> SIZE(REAL) *)
> (* and on the x86_64 LONGREAL is 128 bits *)
> (* for __ppc__, LONGREAL is 64 bits in gcc-3.3 *)
> #endif
>
> --- 25,34 ----
> BITS96 = SET OF [0..95] ;
> REAL32 = SHORTREAL;
> REAL64 = REAL;
> ! #if !defined(__sparc__) && !defined(__x86_64) && !defined(__ppc__) &&
> !(defined(__alpha__) && defined(__arch64__))
> REAL96 = LONGREAL ; (* on the __sparc__ SIZE(LONGREAL) =
> SIZE(REAL) *)
> (* and on the x86_64 LONGREAL is 128 bits *)
> + (* this is also true for at least some alphas *)
> (* for __ppc__, LONGREAL is 64 bits in gcc-3.3 *)
> #endif
>
> ***************
> *** 36,42 ****
> b64 : BITS64;
> r32 : REAL32;
> r64 : REAL64;
> ! #if !defined(__sparc__) && !defined(__x86_64) && !defined(__ppc__)
> b96 : BITS96 ;
> r96 : REAL96 ;
> #endif
> --- 37,43 ----
> b64 : BITS64;
> r32 : REAL32;
> r64 : REAL64;
> ! #if !defined(__sparc__) && !defined(__x86_64) && !defined(__ppc__) &&
> !(defined(__alpha__) && defined(__arch64__))
> b96 : BITS96 ;
> r96 : REAL96 ;
> #endif
> ***************
> *** 45,51 ****
> r32 := 1.0 ;
> b32 := CAST(BITS32,r32) ;
> b64 := CAST(BITS64,r64) ;
> ! #if !defined(__sparc__) && !defined(__x86_64) && !defined(__ppc__)
> b96 := CAST(BITS96,r96)
> #endif
> END realbitscast.
> --- 46,52 ----
> r32 := 1.0 ;
> b32 := CAST(BITS32,r32) ;
> b64 := CAST(BITS64,r64) ;
> ! #if !defined(__sparc__) && !defined(__x86_64) && !defined(__ppc__) &&
> !(defined(__alpha__) && defined(__arch64__))
> b96 := CAST(BITS96,r96)
> #endif
> END realbitscast.
> ==========
thanks for the patch..
>
> The gm2.paranoid test failed, not unexpectedly, on FifoQueue.mod.
interesting - what endian ness does the Alpha use? Is it the same as
the ppc? If so I suspect there is a bug in set arithmetic on bigendian
systems.. just a theory.. in essence I guess fixing the ppc port "make
gm2.paranoid" will probably fix the Alpha. If the above theory is true..
> FreeBSD 4.11 (not the newest, but it's what I have access to):
>
> I had to specify 'MAKE=<path>/gmake' on the command line, in addition to
> specifying bash.
>
> Three regressions (well, one with different switches) failed on the
> compile/link and three (from that) were unresolved. The file was
>
> testsuite/gm2/pimlib/logitech/run/pass/realconv.mod
>
> The problem is that there are apparently no long double libraries on the
> system. At least sinl, cosl, sqrtl, fabsl, logl and expl were
> unresolved.
ok, perhaps we need some configure rules to spot lack of libraries..
> However, gm2.paranoid PASSED.
super.. the later is quite an extensive test,
regards,
Gaius
Re: [Gm2] Tru64/Alpha and Freebsd/i386, Gaius Mulley, 2006/01/17