1 (* Copyright (C) 2005, 2006 Free Software Foundation, Inc. *)
2 (* This file is part of GNU Modula-2.
4 GNU Modula-2 is free software; you can redistribute it and/or modify it under
5 the terms of the GNU General Public License as published by the Free
6 Software Foundation; either version 2, or (at your option) any later
9 GNU Modula-2 is distributed in the hope that it will be useful, but WITHOUT ANY
10 WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 You should have received a copy of the GNU General Public License along
15 with gm2; see the file COPYING. If not, write to the Free Software
16 Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *)
20 FROM SYSTEM IMPORT CAST, WORD ;
24 #if defined(__sparc__)
26 #elif defined(__alpha__) && defined(__arch64__)
28 #elif defined(__ppc__)
32 #elif defined(__APPLE__) && defined(__i386__)
34 #elif defined(__APPLE__)
40 BITS32 = SET OF [0..31];
41 BITS64 = SET OF [0..63];
42 BITS96 = SET OF [0..95] ;
46 #if defined(HAVE_REAL96)
48 (* and on the x86_64 LONGREAL is 128 bits *)
49 (* this is also true for at least some alphas *)
57 #if defined(HAVE_REAL96)
64 b32 := CAST(BITS32, r32) ;
65 b64 := CAST(BITS64, r64) ;
66 #if defined(HAVE_REAL96)
67 b96 := CAST(BITS96, r96)