(***********************************************************************) (* *) (* Applied Type System *) (* *) (***********************************************************************) (* ** ATS/Postiats - Unleashing the Potential of Types! ** Copyright (C) 2010-2015 Hongwei Xi, ATS Trustful Software, Inc. ** All rights reserved ** ** ATS is free software; you can redistribute it and/or modify it under ** the terms of the GNU GENERAL PUBLIC LICENSE (GPL) as published by the ** Free Software Foundation; either version 3, or (at your option) any ** later version. ** ** ATS is distributed in the hope that it will be useful, but WITHOUT ANY ** WARRANTY; without even the implied warranty of MERCHANTABILITY or ** FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ** for more details. ** ** You should have received a copy of the GNU General Public License ** along with ATS; see the file COPYING. If not, please write to the ** Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA ** 02110-1301, USA. *) (* ****** ****** *) (* Author: Hongwei Xi *) (* Authoremail: gmhwxiATgmailDOTcom *) (* Start time: February, 2014 *) (* ****** ****** *) (* ** Source: ** $PATSHOME/prelude/DATS/CODEGEN/integer_fixed.atxt ** Time of generation: Thu Jan 11 11:00:14 2018 *) (* ****** ****** *) #define ATS_DYNLOADFLAG 0 // no dynloading (* ****** ****** *) // staload UN = "prelude/SATS/unsafe.sats" // (* ****** ****** *) // implement g0int2int = g0int2int_int8_int implement g0int2int = g0int2int_int16_int implement g0int2int = g0int2int_int32_int implement g0int2int = g0int2int_int64_int // (* ****** ****** *) // implement g0int2uint = g0int2uint_int8_uint implement g0int2uint = g0int2uint_int16_uint implement g0int2uint = g0int2uint_int32_uint implement g0int2uint = g0int2uint_int64_uint // implement g0uint2int = g0uint2int_uint8_int implement g0uint2int = g0uint2int_uint16_int implement g0uint2int = g0uint2int_uint32_int implement g0uint2int = g0uint2int_uint64_int // implement g0uint2uint = g0uint2uint_uint8_uint implement g0uint2uint = g0uint2uint_uint16_uint implement g0uint2uint = g0uint2uint_uint32_uint implement g0uint2uint = g0uint2uint_uint64_uint // (* ****** ****** *) // implement g0int_neg = g0int_neg_int8 implement g0int_abs = g0int_abs_int8 implement g0int_succ = g0int_succ_int8 implement g0int_pred = g0int_pred_int8 implement g0int_half = g0int_half_int8 implement g0int_add = g0int_add_int8 implement g0int_sub = g0int_sub_int8 implement g0int_mul = g0int_mul_int8 implement g0int_div = g0int_div_int8 implement g0int_mod = g0int_mod_int8 implement g0int_asl = g0int_asl_int8 implement g0int_asr = g0int_asr_int8 implement g0int_isltz = g0int_isltz_int8 implement g0int_isltez = g0int_isltez_int8 implement g0int_isgtz = g0int_isgtz_int8 implement g0int_isgtez = g0int_isgtez_int8 implement g0int_iseqz = g0int_iseqz_int8 implement g0int_isneqz = g0int_isneqz_int8 implement g0int_lt = g0int_lt_int8 implement g0int_lte = g0int_lte_int8 implement g0int_gt = g0int_gt_int8 implement g0int_gte = g0int_gte_int8 implement g0int_eq = g0int_eq_int8 implement g0int_neq = g0int_neq_int8 implement g0int_compare = g0int_compare_int8 implement g0int_max = g0int_max_int8 implement g0int_min = g0int_min_int8 // implement fprint_val (out, x) = fprint_int8 (out, x) // implement g0int_neg = g0int_neg_int16 implement g0int_abs = g0int_abs_int16 implement g0int_succ = g0int_succ_int16 implement g0int_pred = g0int_pred_int16 implement g0int_half = g0int_half_int16 implement g0int_add = g0int_add_int16 implement g0int_sub = g0int_sub_int16 implement g0int_mul = g0int_mul_int16 implement g0int_div = g0int_div_int16 implement g0int_mod = g0int_mod_int16 implement g0int_asl = g0int_asl_int16 implement g0int_asr = g0int_asr_int16 implement g0int_isltz = g0int_isltz_int16 implement g0int_isltez = g0int_isltez_int16 implement g0int_isgtz = g0int_isgtz_int16 implement g0int_isgtez = g0int_isgtez_int16 implement g0int_iseqz = g0int_iseqz_int16 implement g0int_isneqz = g0int_isneqz_int16 implement g0int_lt = g0int_lt_int16 implement g0int_lte = g0int_lte_int16 implement g0int_gt = g0int_gt_int16 implement g0int_gte = g0int_gte_int16 implement g0int_eq = g0int_eq_int16 implement g0int_neq = g0int_neq_int16 implement g0int_compare = g0int_compare_int16 implement g0int_max = g0int_max_int16 implement g0int_min = g0int_min_int16 // implement fprint_val (out, x) = fprint_int16 (out, x) // implement g0int_neg = g0int_neg_int32 implement g0int_abs = g0int_abs_int32 implement g0int_succ = g0int_succ_int32 implement g0int_pred = g0int_pred_int32 implement g0int_half = g0int_half_int32 implement g0int_add = g0int_add_int32 implement g0int_sub = g0int_sub_int32 implement g0int_mul = g0int_mul_int32 implement g0int_div = g0int_div_int32 implement g0int_mod = g0int_mod_int32 implement g0int_asl = g0int_asl_int32 implement g0int_asr = g0int_asr_int32 implement g0int_isltz = g0int_isltz_int32 implement g0int_isltez = g0int_isltez_int32 implement g0int_isgtz = g0int_isgtz_int32 implement g0int_isgtez = g0int_isgtez_int32 implement g0int_iseqz = g0int_iseqz_int32 implement g0int_isneqz = g0int_isneqz_int32 implement g0int_lt = g0int_lt_int32 implement g0int_lte = g0int_lte_int32 implement g0int_gt = g0int_gt_int32 implement g0int_gte = g0int_gte_int32 implement g0int_eq = g0int_eq_int32 implement g0int_neq = g0int_neq_int32 implement g0int_compare = g0int_compare_int32 implement g0int_max = g0int_max_int32 implement g0int_min = g0int_min_int32 // implement fprint_val (out, x) = fprint_int32 (out, x) // implement g0int_neg = g0int_neg_int64 implement g0int_abs = g0int_abs_int64 implement g0int_succ = g0int_succ_int64 implement g0int_pred = g0int_pred_int64 implement g0int_half = g0int_half_int64 implement g0int_add = g0int_add_int64 implement g0int_sub = g0int_sub_int64 implement g0int_mul = g0int_mul_int64 implement g0int_div = g0int_div_int64 implement g0int_mod = g0int_mod_int64 implement g0int_asl = g0int_asl_int64 implement g0int_asr = g0int_asr_int64 implement g0int_isltz = g0int_isltz_int64 implement g0int_isltez = g0int_isltez_int64 implement g0int_isgtz = g0int_isgtz_int64 implement g0int_isgtez = g0int_isgtez_int64 implement g0int_iseqz = g0int_iseqz_int64 implement g0int_isneqz = g0int_isneqz_int64 implement g0int_lt = g0int_lt_int64 implement g0int_lte = g0int_lte_int64 implement g0int_gt = g0int_gt_int64 implement g0int_gte = g0int_gte_int64 implement g0int_eq = g0int_eq_int64 implement g0int_neq = g0int_neq_int64 implement g0int_compare = g0int_compare_int64 implement g0int_max = g0int_max_int64 implement g0int_min = g0int_min_int64 // implement fprint_val (out, x) = fprint_int64 (out, x) // (* ****** ****** *) // implement g0uint_succ = g0uint_succ_uint8 implement g0uint_pred = g0uint_pred_uint8 implement g0uint_half = g0uint_half_uint8 implement g0uint_add = g0uint_add_uint8 implement g0uint_sub = g0uint_sub_uint8 implement g0uint_mul = g0uint_mul_uint8 implement g0uint_div = g0uint_div_uint8 implement g0uint_mod = g0uint_mod_uint8 implement g0uint_lsl = g0uint_lsl_uint8 implement g0uint_lsr = g0uint_lsr_uint8 implement g0uint_lnot = g0uint_lnot_uint8 implement g0uint_lor = g0uint_lor_uint8 implement g0uint_lxor = g0uint_lxor_uint8 implement g0uint_land = g0uint_land_uint8 implement g0uint_isgtz = g0uint_isgtz_uint8 implement g0uint_iseqz = g0uint_iseqz_uint8 implement g0uint_isneqz = g0uint_isneqz_uint8 implement g0uint_lt = g0uint_lt_uint8 implement g0uint_lte = g0uint_lte_uint8 implement g0uint_gt = g0uint_gt_uint8 implement g0uint_gte = g0uint_gte_uint8 implement g0uint_eq = g0uint_eq_uint8 implement g0uint_neq = g0uint_neq_uint8 implement g0uint_compare = g0uint_compare_uint8 implement g0uint_max = g0uint_max_uint8 implement g0uint_min = g0uint_min_uint8 // implement fprint_val (out, x) = fprint_uint8 (out, x) // implement g0uint_succ = g0uint_succ_uint16 implement g0uint_pred = g0uint_pred_uint16 implement g0uint_half = g0uint_half_uint16 implement g0uint_add = g0uint_add_uint16 implement g0uint_sub = g0uint_sub_uint16 implement g0uint_mul = g0uint_mul_uint16 implement g0uint_div = g0uint_div_uint16 implement g0uint_mod = g0uint_mod_uint16 implement g0uint_lsl = g0uint_lsl_uint16 implement g0uint_lsr = g0uint_lsr_uint16 implement g0uint_lnot = g0uint_lnot_uint16 implement g0uint_lor = g0uint_lor_uint16 implement g0uint_lxor = g0uint_lxor_uint16 implement g0uint_land = g0uint_land_uint16 implement g0uint_isgtz = g0uint_isgtz_uint16 implement g0uint_iseqz = g0uint_iseqz_uint16 implement g0uint_isneqz = g0uint_isneqz_uint16 implement g0uint_lt = g0uint_lt_uint16 implement g0uint_lte = g0uint_lte_uint16 implement g0uint_gt = g0uint_gt_uint16 implement g0uint_gte = g0uint_gte_uint16 implement g0uint_eq = g0uint_eq_uint16 implement g0uint_neq = g0uint_neq_uint16 implement g0uint_compare = g0uint_compare_uint16 implement g0uint_max = g0uint_max_uint16 implement g0uint_min = g0uint_min_uint16 // implement fprint_val (out, x) = fprint_uint16 (out, x) // implement g0uint_succ = g0uint_succ_uint32 implement g0uint_pred = g0uint_pred_uint32 implement g0uint_half = g0uint_half_uint32 implement g0uint_add = g0uint_add_uint32 implement g0uint_sub = g0uint_sub_uint32 implement g0uint_mul = g0uint_mul_uint32 implement g0uint_div = g0uint_div_uint32 implement g0uint_mod = g0uint_mod_uint32 implement g0uint_lsl = g0uint_lsl_uint32 implement g0uint_lsr = g0uint_lsr_uint32 implement g0uint_lnot = g0uint_lnot_uint32 implement g0uint_lor = g0uint_lor_uint32 implement g0uint_lxor = g0uint_lxor_uint32 implement g0uint_land = g0uint_land_uint32 implement g0uint_isgtz = g0uint_isgtz_uint32 implement g0uint_iseqz = g0uint_iseqz_uint32 implement g0uint_isneqz = g0uint_isneqz_uint32 implement g0uint_lt = g0uint_lt_uint32 implement g0uint_lte = g0uint_lte_uint32 implement g0uint_gt = g0uint_gt_uint32 implement g0uint_gte = g0uint_gte_uint32 implement g0uint_eq = g0uint_eq_uint32 implement g0uint_neq = g0uint_neq_uint32 implement g0uint_compare = g0uint_compare_uint32 implement g0uint_max = g0uint_max_uint32 implement g0uint_min = g0uint_min_uint32 // implement fprint_val (out, x) = fprint_uint32 (out, x) // implement g0uint_succ = g0uint_succ_uint64 implement g0uint_pred = g0uint_pred_uint64 implement g0uint_half = g0uint_half_uint64 implement g0uint_add = g0uint_add_uint64 implement g0uint_sub = g0uint_sub_uint64 implement g0uint_mul = g0uint_mul_uint64 implement g0uint_div = g0uint_div_uint64 implement g0uint_mod = g0uint_mod_uint64 implement g0uint_lsl = g0uint_lsl_uint64 implement g0uint_lsr = g0uint_lsr_uint64 implement g0uint_lnot = g0uint_lnot_uint64 implement g0uint_lor = g0uint_lor_uint64 implement g0uint_lxor = g0uint_lxor_uint64 implement g0uint_land = g0uint_land_uint64 implement g0uint_isgtz = g0uint_isgtz_uint64 implement g0uint_iseqz = g0uint_iseqz_uint64 implement g0uint_isneqz = g0uint_isneqz_uint64 implement g0uint_lt = g0uint_lt_uint64 implement g0uint_lte = g0uint_lte_uint64 implement g0uint_gt = g0uint_gt_uint64 implement g0uint_gte = g0uint_gte_uint64 implement g0uint_eq = g0uint_eq_uint64 implement g0uint_neq = g0uint_neq_uint64 implement g0uint_compare = g0uint_compare_uint64 implement g0uint_max = g0uint_max_uint64 implement g0uint_min = g0uint_min_uint64 // implement fprint_val (out, x) = fprint_uint64 (out, x) // (* ****** ****** *) (* end of [integer_fixed.dats] *)