[BACK]Return to unicos.m4 CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gmp / mpn / alpha

Annotation of OpenXM_contrib/gmp/mpn/alpha/unicos.m4, Revision 1.1.1.2

1.1       maekawa     1: divert(-1)
                      2:
1.1.1.2 ! ohara       3: dnl  m4 macros for alpha assembler on unicos.
1.1       maekawa     4:
1.1.1.2 ! ohara       5:
        !             6: dnl  Copyright 2000, 2002 Free Software Foundation, Inc.
        !             7: dnl
1.1       maekawa     8: dnl  This file is part of the GNU MP Library.
                      9: dnl
                     10: dnl  The GNU MP Library is free software; you can redistribute it and/or
                     11: dnl  modify it under the terms of the GNU Lesser General Public License as
                     12: dnl  published by the Free Software Foundation; either version 2.1 of the
                     13: dnl  License, or (at your option) any later version.
                     14: dnl
                     15: dnl  The GNU MP Library is distributed in the hope that it will be useful,
                     16: dnl  but WITHOUT ANY WARRANTY; without even the implied warranty of
                     17: dnl  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
                     18: dnl  Lesser General Public License for more details.
                     19: dnl
                     20: dnl  You should have received a copy of the GNU Lesser General Public
                     21: dnl  License along with the GNU MP Library; see the file COPYING.LIB.  If
                     22: dnl  not, write to the Free Software Foundation, Inc., 59 Temple Place -
                     23: dnl  Suite 330, Boston, MA 02111-1307, USA.
                     24:
                     25:
1.1.1.2 ! ohara      26: dnl  Note that none of the standard GMP_ASM_ autoconf tests are done for
        !            27: dnl  unicos, so none of the config.m4 results can be used here.
        !            28:
        !            29: dnl  No underscores on unicos
        !            30: define(`GSYM_PREFIX')
        !            31:
1.1       maekawa    32: define(`ASM_START',
1.1.1.2 ! ohara      33: m4_assert_numargs(0)
        !            34: `      .ident  dummy')
        !            35:
        !            36: define(`X',
        !            37: m4_assert_numargs(1)
        !            38: `^X$1')
1.1       maekawa    39:
                     40: define(`FLOAT64',
1.1.1.2 ! ohara      41: m4_assert_numargs(2)
        !            42: `      .psect  $1@crud,data
1.1       maekawa    43: $1:    .t_floating $2
                     44:        .endp')
                     45:
1.1.1.2 ! ohara      46: dnl  Called: PROLOGUE_cpu(GSYM_PREFIX`'foo[,gp|noalign])
        !            47: dnl          EPILOGUE_cpu(GSYM_PREFIX`'foo)
        !            48:
        !            49: define(`PROLOGUE_cpu',
        !            50: m4_assert_numargs_range(1,2)
        !            51: `ifelse(`$2',gp,,
        !            52: `ifelse(`$2',noalign,,
        !            53: `ifelse(`$2',,,`m4_error(`Unrecognised PROLOGUE parameter
        !            54: ')')')')dnl
1.1       maekawa    55:        .stack  192             ; What does this mean?  Only Cray knows.
                     56:        .psect  $1@code,code,cache
                     57: $1::')
                     58:
1.1.1.2 ! ohara      59: define(`EPILOGUE_cpu',
        !            60: m4_assert_numargs(1)
        !            61: `      .endp')
        !            62:
        !            63: dnl  Usage: EXTERN(variable_name)
        !            64: define(`EXTERN',
        !            65: m4_assert_numargs(1)
        !            66: `      .extern $1')
1.1       maekawa    67:
                     68: define(`DATASTART',
1.1.1.2 ! ohara      69: m4_assert_numargs(1)
        !            70: `      .psect  $1@crud,data
1.1       maekawa    71: $1:')
1.1.1.2 ! ohara      72:
1.1       maekawa    73: define(`DATAEND',
1.1.1.2 ! ohara      74: m4_assert_numargs(0)
        !            75: `      .endp')
1.1       maekawa    76:
                     77: define(`ASM_END',
1.1.1.2 ! ohara      78: m4_assert_numargs(0)
        !            79: `      .end')
1.1       maekawa    80:
1.1.1.2 ! ohara      81: dnl  Unicos assembler lacks unop
        !            82: define(`unop',
        !            83: m4_assert_numargs(-1)
        !            84: `bis r31,r31,r31')
        !            85:
        !            86: define(`cvttqc',
        !            87: m4_assert_numargs(-1)
        !            88: `cvttq/c')
        !            89:
        !            90: dnl  Load a symbolic address into a register
        !            91: define(`LEA',
        !            92: m4_assert_numargs(2)
        !            93:        `laum   $1,  $2(r31)
        !            94:        sll     $1,  32,   $1
        !            95:        lalm    $1,  $2($1)
        !            96:        lal     $1,  $2($1)')
        !            97:
        !            98: dnl  Need some stuff for extwl just for bigend systems, like Unicos.
        !            99: define(`bigend',
        !           100: m4_assert_numargs(1)
        !           101: `$1')
        !           102:
        !           103: dnl  Unicos assembler seems to align using garbage, so disable aligning
        !           104: define(`ALIGN',
        !           105: m4_assert_numargs(1)
        !           106: )
1.1       maekawa   107:
                    108: divert

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>