1 /* Native functions for integer operations. 2 3 Copyright (C) 2016 Paul Boddie <paul@boddie.org.uk> 4 5 This program is free software; you can redistribute it and/or modify it under 6 the terms of the GNU General Public License as published by the Free Software 7 Foundation; either version 3 of the License, or (at your option) any later 8 version. 9 10 This program is distributed in the hope that it will be useful, but WITHOUT 11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 12 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more 13 details. 14 15 You should have received a copy of the GNU General Public License along with 16 this program. If not, see <http://www.gnu.org/licenses/>. 17 */ 18 19 #ifndef __NATIVE_INT_H__ 20 #define __NATIVE_INT_H__ 21 22 #include "types.h" 23 24 /* Integer operations. */ 25 26 __attr __fn_native_int_int_add(__attr __args[]); 27 __attr __fn_native_int_int_div(__attr __args[]); 28 __attr __fn_native_int_int_mod(__attr __args[]); 29 __attr __fn_native_int_int_mul(__attr __args[]); 30 __attr __fn_native_int_int_neg(__attr __args[]); 31 __attr __fn_native_int_int_pow(__attr __args[]); 32 __attr __fn_native_int_int_sub(__attr __args[]); 33 34 __attr __fn_native_int_int_and(__attr __args[]); 35 __attr __fn_native_int_int_not(__attr __args[]); 36 __attr __fn_native_int_int_or(__attr __args[]); 37 __attr __fn_native_int_int_xor(__attr __args[]); 38 39 __attr __fn_native_int_int_rdiv(__attr __args[]); 40 __attr __fn_native_int_int_rmod(__attr __args[]); 41 __attr __fn_native_int_int_rpow(__attr __args[]); 42 __attr __fn_native_int_int_rsub(__attr __args[]); 43 44 __attr __fn_native_int_int_lt(__attr __args[]); 45 __attr __fn_native_int_int_gt(__attr __args[]); 46 __attr __fn_native_int_int_eq(__attr __args[]); 47 __attr __fn_native_int_int_ne(__attr __args[]); 48 49 __attr __fn_native_int_int_str(__attr __args[]); 50 51 /* Module initialisation. */ 52 53 void __main_native_int(); 54 55 #endif /* __NATIVE_INT_H__ */