⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 m_00000000003490379908_3583487205.c

📁 32位单精度浮点加法器
💻 C
📖 第 1 页 / 共 5 页
字号:
/**********************************************************************/
/*   ____  ____                                                       */
/*  /   /\/   /                                                       */
/* /___/  \  /                                                        */
/* \   \   \/                                                       */
/*  \   \        Copyright (c) 2003-2009 Xilinx, Inc.                */
/*  /   /          All Right Reserved.                                 */
/* /---/   /\                                                         */
/* \   \  /  \                                                      */
/*  \___\/\___\                                                    */
/***********************************************************************/

/* This file is designed for use with ISim build 0xa0883be4 */

#define XSI_HIDE_SYMBOL_SPEC true
#include "xsi.h"
#include <memory.h>
#ifdef __GNUC__
#include <stdlib.h>
#else
#include <malloc.h>
#define alloca _alloca
#endif
static int ng0[] = {1, 0};
static int ng1[] = {3, 0};
static int ng2[] = {2, 0};
static unsigned int ng3[] = {0U, 0U};
static int ng4[] = {0, 0};
static unsigned int ng5[] = {1U, 0U};
static int ng6[] = {8, 0};
static int ng7[] = {4, 0};
static unsigned int ng8[] = {48U, 0U};
static unsigned int ng9[] = {49U, 0U};
static unsigned int ng10[] = {50U, 0U};
static unsigned int ng11[] = {2U, 0U};
static unsigned int ng12[] = {51U, 0U};
static unsigned int ng13[] = {3U, 0U};
static unsigned int ng14[] = {52U, 0U};
static unsigned int ng15[] = {4U, 0U};
static unsigned int ng16[] = {53U, 0U};
static unsigned int ng17[] = {5U, 0U};
static unsigned int ng18[] = {54U, 0U};
static unsigned int ng19[] = {6U, 0U};
static unsigned int ng20[] = {55U, 0U};
static unsigned int ng21[] = {7U, 0U};
static unsigned int ng22[] = {56U, 0U};
static unsigned int ng23[] = {8U, 0U};
static unsigned int ng24[] = {57U, 0U};
static unsigned int ng25[] = {9U, 0U};
static unsigned int ng26[] = {65U, 0U};
static unsigned int ng27[] = {10U, 0U};
static unsigned int ng28[] = {66U, 0U};
static unsigned int ng29[] = {11U, 0U};
static unsigned int ng30[] = {67U, 0U};
static unsigned int ng31[] = {12U, 0U};
static unsigned int ng32[] = {68U, 0U};
static unsigned int ng33[] = {13U, 0U};
static unsigned int ng34[] = {69U, 0U};
static unsigned int ng35[] = {14U, 0U};
static unsigned int ng36[] = {70U, 0U};
static unsigned int ng37[] = {15U, 0U};
static unsigned int ng38[] = {97U, 0U};
static unsigned int ng39[] = {98U, 0U};
static unsigned int ng40[] = {99U, 0U};
static unsigned int ng41[] = {100U, 0U};
static unsigned int ng42[] = {101U, 0U};
static unsigned int ng43[] = {102U, 0U};
static unsigned int ng44[] = {15U, 15U};
static int ng45[] = {48, 0, 0, 0};



static int sp_write_fifo(char *t1, char *t2)
{
    char t7[8];
    char t8[8];
    char t29[8];
    int t0;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    char *t9;
    char *t10;
    char *t11;
    char *t12;
    char *t13;
    char *t14;
    char *t15;
    char *t16;
    char *t17;
    char *t18;
    unsigned int t19;
    int t20;
    char *t21;
    unsigned int t22;
    int t23;
    int t24;
    unsigned int t25;
    unsigned int t26;
    int t27;
    int t28;
    char *t30;
    char *t31;
    int t32;
    unsigned int t33;
    unsigned int t34;
    unsigned int t35;
    unsigned int t36;
    unsigned int t37;
    unsigned int t38;
    unsigned int t39;
    unsigned int t40;
    unsigned int t41;
    unsigned int t42;
    unsigned int t43;
    unsigned int t44;
    unsigned int t45;

LAB0:    t0 = 1;
    t3 = (t2 + 48U);
    t4 = *((char **)t3);
    if (t4 == 0)
        goto LAB2;

LAB3:    goto *t4;

LAB2:    t4 = (t1 + 9536);
    xsi_vlog_subprogram_setdisablestate(t4, &&LAB4);

LAB5:    t5 = (t1 + 11464U);
    t6 = *((char **)t5);
    t5 = (t1 + 21144);
    t9 = (t1 + 21144);
    t10 = (t9 + 72U);
    t11 = *((char **)t10);
    t12 = (t1 + 21144);
    t13 = (t12 + 64U);
    t14 = *((char **)t13);
    t15 = (t1 + 22104);
    t16 = (t15 + 56U);
    t17 = *((char **)t16);
    xsi_vlog_generic_convert_array_indices(t7, t8, t11, t14, 2, 1, t17, 32, 2);
    t18 = (t7 + 4);
    t19 = *((unsigned int *)t18);
    t20 = (!(t19));
    t21 = (t8 + 4);
    t22 = *((unsigned int *)t21);
    t23 = (!(t22));
    t24 = (t20 && t23);
    if (t24 == 1)
        goto LAB6;

LAB7:    t4 = (t1 + 22264);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    t9 = ((char*)((ng0)));
    memset(t7, 0, 8);
    xsi_vlog_unsigned_add(t7, 32, t6, 11, t9, 32);
    t10 = (t1 + 22264);
    xsi_vlogvar_wait_assign_value(t10, t7, 0, 0, 11, 100LL);
    t4 = (t1 + 7392);
    t5 = *((char **)t4);

LAB8:    t4 = ((char*)((ng1)));
    t20 = xsi_vlog_signed_case_compare(t5, 32, t4, 32);
    if (t20 == 1)
        goto LAB9;

LAB10:    t4 = ((char*)((ng2)));
    t20 = xsi_vlog_signed_case_compare(t5, 32, t4, 32);
    if (t20 == 1)
        goto LAB11;

LAB12:    t4 = ((char*)((ng0)));
    t20 = xsi_vlog_signed_case_compare(t5, 32, t4, 32);
    if (t20 == 1)
        goto LAB13;

LAB14:
LAB16:
LAB15:    t4 = ((char*)((ng4)));
    t6 = (t1 + 21304);
    t9 = (t1 + 21304);
    t10 = (t9 + 72U);
    t11 = *((char **)t10);
    t12 = (t1 + 21304);
    t13 = (t12 + 64U);
    t14 = *((char **)t13);
    t15 = (t1 + 22104);
    t16 = (t15 + 56U);
    t17 = *((char **)t16);
    xsi_vlog_generic_convert_array_indices(t7, t8, t11, t14, 2, 1, t17, 32, 2);
    t18 = (t7 + 4);
    t19 = *((unsigned int *)t18);
    t20 = (!(t19));
    t21 = (t8 + 4);
    t22 = *((unsigned int *)t21);
    t23 = (!(t22));
    t24 = (t20 && t23);
    if (t24 == 1)
        goto LAB24;

LAB25:
LAB17:    t4 = (t1 + 22104);
    t6 = (t4 + 56U);
    t9 = *((char **)t6);
    t10 = ((char*)((ng4)));
    memset(t7, 0, 8);
    t11 = (t9 + 4);
    t12 = (t10 + 4);
    t19 = *((unsigned int *)t9);
    t22 = *((unsigned int *)t10);
    t25 = (t19 ^ t22);
    t26 = *((unsigned int *)t11);
    t33 = *((unsigned int *)t12);
    t34 = (t26 ^ t33);
    t35 = (t25 | t34);
    t36 = *((unsigned int *)t11);
    t37 = *((unsigned int *)t12);
    t38 = (t36 | t37);
    t39 = (~(t38));
    t40 = (t35 & t39);
    if (t40 != 0)
        goto LAB29;

LAB26:    if (t38 != 0)
        goto LAB28;

LAB27:    *((unsigned int *)t7) = 1;

LAB29:    t14 = (t7 + 4);
    t41 = *((unsigned int *)t14);
    t42 = (~(t41));
    t43 = *((unsigned int *)t7);
    t44 = (t43 & t42);
    t45 = (t44 != 0);
    if (t45 > 0)
        goto LAB30;

LAB31:
LAB34:    t4 = (t1 + 22104);
    t6 = (t4 + 56U);
    t9 = *((char **)t6);
    t10 = ((char*)((ng0)));
    memset(t7, 0, 8);
    xsi_vlog_unsigned_minus(t7, 32, t9, 32, t10, 32);
    t11 = (t1 + 22104);
    xsi_vlogvar_wait_assign_value(t11, t7, 0, 0, 32, 0LL);

LAB32:
LAB4:    xsi_vlog_dispose_subprogram_invocation(t2);
    t4 = (t2 + 48U);
    *((char **)t4) = &&LAB2;
    t0 = 0;

LAB1:    return t0;
LAB6:    t25 = *((unsigned int *)t7);
    t26 = *((unsigned int *)t8);
    t27 = (t25 - t26);
    t28 = (t27 + 1);
    xsi_vlogvar_wait_assign_value(t5, t6, 0, *((unsigned int *)t8), t28, 0LL);
    goto LAB7;

LAB9:    t6 = (t1 + 14344U);
    t9 = *((char **)t6);
    t6 = (t1 + 14184U);
    t10 = *((char **)t6);
    xsi_vlogtype_concat(t7, 2, 2, 2U, t10, 1, t9, 1);
    t6 = (t1 + 21304);
    t11 = (t1 + 21304);
    t12 = (t11 + 72U);
    t13 = *((char **)t12);
    t14 = (t1 + 21304);
    t15 = (t14 + 64U);
    t16 = *((char **)t15);
    t17 = (t1 + 22104);
    t18 = (t17 + 56U);
    t21 = *((char **)t18);
    xsi_vlog_generic_convert_array_indices(t8, t29, t13, t16, 2, 1, t21, 32, 2);
    t30 = (t8 + 4);
    t19 = *((unsigned int *)t30);
    t23 = (!(t19));
    t31 = (t29 + 4);
    t22 = *((unsigned int *)t31);
    t24 = (!(t22));
    t27 = (t23 && t24);
    if (t27 == 1)
        goto LAB18;

LAB19:    goto LAB17;

LAB11:    t6 = ((char*)((ng3)));
    t9 = (t1 + 14184U);
    t10 = *((char **)t9);
    xsi_vlogtype_concat(t7, 2, 2, 2U, t10, 1, t6, 1);
    t9 = (t1 + 21304);
    t11 = (t1 + 21304);
    t12 = (t11 + 72U);
    t13 = *((char **)t12);
    t14 = (t1 + 21304);
    t15 = (t14 + 64U);
    t16 = *((char **)t15);
    t17 = (t1 + 22104);
    t18 = (t17 + 56U);
    t21 = *((char **)t18);
    xsi_vlog_generic_convert_array_indices(t8, t29, t13, t16, 2, 1, t21, 32, 2);
    t30 = (t8 + 4);
    t19 = *((unsigned int *)t30);
    t23 = (!(t19));
    t31 = (t29 + 4);
    t22 = *((unsigned int *)t31);
    t24 = (!(t22));
    t27 = (t23 && t24);
    if (t27 == 1)
        goto LAB20;

LAB21:    goto LAB17;

LAB13:    t6 = (t1 + 14344U);
    t9 = *((char **)t6);
    t6 = ((char*)((ng3)));
    xsi_vlogtype_concat(t7, 2, 2, 2U, t6, 1, t9, 1);
    t10 = (t1 + 21304);
    t11 = (t1 + 21304);
    t12 = (t11 + 72U);
    t13 = *((char **)t12);
    t14 = (t1 + 21304);
    t15 = (t14 + 64U);
    t16 = *((char **)t15);
    t17 = (t1 + 22104);
    t18 = (t17 + 56U);
    t21 = *((char **)t18);
    xsi_vlog_generic_convert_array_indices(t8, t29, t13, t16, 2, 1, t21, 32, 2);
    t30 = (t8 + 4);
    t19 = *((unsigned int *)t30);
    t23 = (!(t19));
    t31 = (t29 + 4);
    t22 = *((unsigned int *)t31);
    t24 = (!(t22));
    t27 = (t23 && t24);
    if (t27 == 1)
        goto LAB22;

LAB23:    goto LAB17;

LAB18:    t25 = *((unsigned int *)t8);
    t26 = *((unsigned int *)t29);
    t28 = (t25 - t26);
    t32 = (t28 + 1);
    xsi_vlogvar_wait_assign_value(t6, t7, 0, *((unsigned int *)t29), t32, 0LL);
    goto LAB19;

LAB20:    t25 = *((unsigned int *)t8);
    t26 = *((unsigned int *)t29);
    t28 = (t25 - t26);
    t32 = (t28 + 1);
    xsi_vlogvar_wait_assign_value(t9, t7, 0, *((unsigned int *)t29), t32, 0LL);
    goto LAB21;

LAB22:    t25 = *((unsigned int *)t8);
    t26 = *((unsigned int *)t29);
    t28 = (t25 - t26);
    t32 = (t28 + 1);
    xsi_vlogvar_wait_assign_value(t10, t7, 0, *((unsigned int *)t29), t32, 0LL);
    goto LAB23;

LAB24:    t25 = *((unsigned int *)t7);
    t26 = *((unsigned int *)t8);
    t27 = (t25 - t26);
    t28 = (t27 + 1);
    xsi_vlogvar_wait_assign_value(t6, t4, 0, *((unsigned int *)t8), t28, 0LL);
    goto LAB25;

LAB28:    t13 = (t7 + 4);
    *((unsigned int *)t7) = 1;
    *((unsigned int *)t13) = 1;
    goto LAB29;

LAB30:
LAB33:    t15 = (t1 + 6848);
    t16 = *((char **)t15);
    t15 = ((char*)((ng0)));
    memset(t8, 0, 8);
    xsi_vlog_signed_minus(t8, 32, t16, 32, t15, 32);
    t17 = (t1 + 22104);
    xsi_vlogvar_wait_assign_value(t17, t8, 0, 0, 32, 0LL);
    goto LAB32;

}

static int sp_read_fifo(char *t1, char *t2)
{
    char t9[8];
    char t30[8];
    char t31[8];
    char t53[8];
    char t73[8];
    char t86[8];
    char t93[8];
    int t0;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    char *t7;
    char *t8;
    char *t10;
    unsigned int t11;
    unsigned int t12;
    unsigned int t13;
    unsigned int t14;
    unsigned int t15;
    unsigned int t16;
    unsigned int t17;
    unsigned int t18;
    unsigned int t19;
    unsigned int t20;
    unsigned int t21;
    unsigned int t22;
    unsigned int t23;
    unsigned int t24;
    unsigned int t25;
    unsigned int t26;
    unsigned int t27;
    char *t28;
    char *t29;
    char *t32;
    char *t33;
    char *t34;
    char *t35;
    char *t36;
    char *t37;
    char *t38;
    char *t39;
    char *t40;
    char *t41;
    char *t42;
    char *t43;
    int t44;
    int t45;
    unsigned int t46;
    unsigned int t47;
    unsigned int t48;
    char *t49;
    unsigned int t50;
    unsigned int t51;
    unsigned int t52;
    unsigned int t54;
    unsigned int t55;
    unsigned int t56;
    unsigned int t57;
    unsigned int t58;
    unsigned int t59;
    unsigned int t60;
    unsigned int t61;
    unsigned int t62;
    unsigned int t63;
    unsigned int t64;
    unsigned int t65;
    unsigned int t66;
    unsigned int t67;
    unsigned int t68;
    unsigned int t69;
    unsigned int t70;
    unsigned int t71;
    unsigned int t72;
    unsigned int t74;
    unsigned int t75;
    unsigned int t76;
    unsigned int t77;
    unsigned int t78;
    unsigned int t79;
    unsigned int t80;
    unsigned int t81;
    unsigned int t82;
    unsigned int t83;
    unsigned int t84;
    char *t85;
    char *t87;
    unsigned int t88;
    unsigned int t89;
    unsigned int t90;
    unsigned int t91;
    unsigned int t92;
    char *t94;
    char *t95;
    char *t96;
    char *t97;
    char *t98;
    unsigned int t99;
    unsigned int t100;
    unsigned int t101;
    unsigned int t102;
    unsigned int t103;
    unsigned int t104;
    char *t105;

LAB0:    t0 = 1;
    t3 = (t2 + 48U);
    t4 = *((char **)t3);
    if (t4 == 0)
        goto LAB2;

LAB3:    goto *t4;

LAB2:    t4 = (t1 + 9968);
    xsi_vlog_subprogram_setdisablestate(t4, &&LAB4);

LAB5:    t5 = (t1 + 23384);
    t6 = (t5 + 56U);
    t7 = *((char **)t6);
    t8 = ((char*)((ng0)));
    memset(t9, 0, 8);
    xsi_vlog_unsigned_add(t9, 32, t7, 11, t8, 32);
    t10 = (t1 + 23384);
    xsi_vlogvar_wait_assign_value(t10, t9, 0, 0, 11, 100LL);
    t4 = ((char*)((ng5)));
    t5 = ((char*)((ng4)));
    memset(t9, 0, 8);
    t6 = (t4 + 4);
    t7 = (t5 + 4);
    t11 = *((unsigned int *)t4);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -