14a1767b4Smrgdivert(-1) 24a1767b4Smrgdnl m4 macros for AIX 32-bit assembly. 34a1767b4Smrg 4*f81b1c5bSmrgdnl Copyright 2000-2002, 2005, 2006 Free Software Foundation, Inc. 5*f81b1c5bSmrg 64a1767b4Smrgdnl This file is part of the GNU MP Library. 74a1767b4Smrgdnl 8*f81b1c5bSmrgdnl The GNU MP Library is free software; you can redistribute it and/or modify 9*f81b1c5bSmrgdnl it under the terms of either: 104a1767b4Smrgdnl 11*f81b1c5bSmrgdnl * the GNU Lesser General Public License as published by the Free 12*f81b1c5bSmrgdnl Software Foundation; either version 3 of the License, or (at your 13*f81b1c5bSmrgdnl option) any later version. 144a1767b4Smrgdnl 15*f81b1c5bSmrgdnl or 16*f81b1c5bSmrgdnl 17*f81b1c5bSmrgdnl * the GNU General Public License as published by the Free Software 18*f81b1c5bSmrgdnl Foundation; either version 2 of the License, or (at your option) any 19*f81b1c5bSmrgdnl later version. 20*f81b1c5bSmrgdnl 21*f81b1c5bSmrgdnl or both in parallel, as here. 22*f81b1c5bSmrgdnl 23*f81b1c5bSmrgdnl The GNU MP Library is distributed in the hope that it will be useful, but 24*f81b1c5bSmrgdnl WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 25*f81b1c5bSmrgdnl or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 26*f81b1c5bSmrgdnl for more details. 27*f81b1c5bSmrgdnl 28*f81b1c5bSmrgdnl You should have received copies of the GNU General Public License and the 29*f81b1c5bSmrgdnl GNU Lesser General Public License along with the GNU MP Library. If not, 30*f81b1c5bSmrgdnl see https://www.gnu.org/licenses/. 314a1767b4Smrg 324a1767b4Smrgdefine(`ASM_START', 334a1767b4Smrg` .toc') 344a1767b4Smrg 354a1767b4Smrgdnl Called: PROLOGUE_cpu(GSYM_PREFIX`'foo) 364a1767b4Smrgdnl EPILOGUE_cpu(GSYM_PREFIX`'foo) 374a1767b4Smrgdnl 384a1767b4Smrgdnl Don't want ELF style .size in the epilogue. 394a1767b4Smrg 404a1767b4Smrgdefine(`PROLOGUE_cpu', 414a1767b4Smrgm4_assert_numargs(1) 424a1767b4Smrg ` 434a1767b4Smrg .globl $1 444a1767b4Smrg .globl .$1 454a1767b4Smrg .csect [DS], 2 464a1767b4Smrg$1: 474a1767b4Smrg .long .$1, TOC[tc0], 0 484a1767b4Smrg .csect [PR] 494a1767b4Smrg .align 2 504a1767b4Smrg.$1:') 514a1767b4Smrg 524a1767b4Smrgdefine(`EPILOGUE_cpu', 534a1767b4Smrgm4_assert_numargs(1) 544a1767b4Smrg`') 554a1767b4Smrg 564a1767b4Smrgdefine(`TOC_ENTRY', `') 574a1767b4Smrg 584a1767b4Smrgdefine(`LEA', 594a1767b4Smrgm4_assert_numargs(2) 604a1767b4Smrg`define(`TOC_ENTRY', 614a1767b4Smrg` .toc 624a1767b4Smrgtc$2: 634a1767b4Smrg .tc $2[TC], $2')' 644a1767b4Smrg` lwz $1, tc$2(2)') 654a1767b4Smrg 664a1767b4Smrgdefine(`EXTERN', 674a1767b4Smrgm4_assert_numargs(1) 684a1767b4Smrg` .globl $1') 694a1767b4Smrg 704a1767b4Smrgdefine(`DEF_OBJECT', 714a1767b4Smrgm4_assert_numargs_range(1,2) 724a1767b4Smrg` .csect [RO], 3 734a1767b4Smrg ALIGN(ifelse($#,1,2,$2)) 744a1767b4Smrg$1: 754a1767b4Smrg') 764a1767b4Smrg 774a1767b4Smrgdefine(`END_OBJECT', 784a1767b4Smrgm4_assert_numargs(1)) 794a1767b4Smrg 804a1767b4Smrgdefine(`ASM_END', `TOC_ENTRY') 814a1767b4Smrg 824a1767b4Smrgdivert 83