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

📄 icolor_kc.uc

📁 H.264完整的C语言代码和DCT的代码
💻 UC
📖 第 1 页 / 共 5 页
字号:
    RF:5:IN:0:REG:1 = B:28 STAGE:-1 VAR: cluster#id DATATYPE: ANYINT,
    B:12 = RF:3:OUT:0:REG:2 VAR: const#-2 DATATYPE: ANYINT,
    U0:IN:0 = B:12 VAR: const#-2 DATATYPE: ANYINT,
    B:13 = RF:7:OUT:0:REG:3 VAR: const#2 DATATYPE: ANYINT,
    U0:IN:1 = B:13 VAR: const#2 DATATYPE: ANYINT,
    B:29 = U0:OUT:0 INSTR_LOG:1|const#-8#||0 VAR: const#-8 DATATYPE: ANYINT,
    RF:4:IN:0:REG:1 = B:29 STAGE:-1 VAR: const#-8 DATATYPE: ANYINT,
    B:16 = RF:5:OUT:0:REG:1 VAR: tmp#5 DATATYPE: HALF2,
    U2:IN:0 = B:16 VAR: tmp#5 DATATYPE: HALF2,
    B:17 = RF:9:OUT:0:REG:1 VAR: const#2 DATATYPE: ANYINT,
    U2:IN:1 = B:17 VAR: const#2 DATATYPE: ANYINT,
    B:31 = U2:OUT:0 INSTR_LOG:1|const#4#||0 VAR: const#4 DATATYPE: ANYINT,
    RF:9:IN:0:REG:1 = B:31 STAGE:-1 VAR: const#4 DATATYPE: ANYINT,
    B:14 = RF:4:OUT:0:REG:1 VAR: const#8 DATATYPE: ANYINT,
    U1:IN:0 = B:14 VAR: const#8 DATATYPE: ANYINT,
    B:30 = U1:OUT:0 INSTR_LOG:1|const#-9#||0 VAR: const#-9 DATATYPE: ANYINT,
    RF:8:IN:0:REG:2 = B:30 STAGE:-1 VAR: const#-9 DATATYPE: ANYINT,
    //  IN:MC_0: ( ) = NLOOP( tmp#7 == UCONDRF_0[1] )
    //  IN:COMM_SCHED_0: ( shuf_func3 ) = COMMUCDATA( hw_mctrl#id == PERMRF_0[0], hw_const#0 == UNITRF_0_1[0], uc_const#0x1000100 == UCRF_0[5] )
    // OUT:COMM_SCHED_0: COMMUCDATA => ( shuf_func3 == MULRF_1_0[5], shuf_func3 == MULRF_1_1[4] )
    //  IN:DIVIDER_0: ( cluster#id ) = SELECT( hw_const#0 == CCRF_0[0], cluster#id == UNITRF_CID_0[0] )
    // OUT:DIVIDER_0: SELECT => ( cluster#id == UNITRF_0_4[1] )
    //  IN:ADDER_0: ( const#-8 ) = SHIFT32( const#-2 == UNITRF_0_2[2], const#2 == UNITRF_1_1[3] )
    // OUT:ADDER_0: SHIFT32 => ( const#-8 == UNITRF_0_3[1] )
    //  IN:ADDER_2: ( const#4 ) = SHIFT32( tmp#5 == UNITRF_0_4[1], const#2 == UNITRF_1_3[1] )
    // OUT:ADDER_2: SHIFT32 => ( const#4 == UNITRF_1_3[1] )
    //  IN:ADDER_1: ( const#-9 ) = NOT( const#8 == UNITRF_0_3[1] )
    // OUT:ADDER_1: NOT => ( const#-9 == UNITRF_1_2[2] )
    DEAD_REGS: {  };
instr: 15
    MC: OP: UC_DATA_IN LINE:72 IMM:0x64203210 UCRF_RD:4 UCRF_WR:2 STAGES:-1,
    U7: OP: COMMUCDATA LINE:-1 STAGE:-1, // D:\working\im_apps\h264\icolor_kc.i:-1
    U2: OP: ILT32 LINE:50 STAGE:-1, // D:\working\im_apps\h264\icolor_kc.i:50
    U1: OP: AND LINE:-1 STAGE:-1, // D:\working\im_apps\h264\icolor_kc.i:-1
    B:9 = RF:15:OUT:0:REG:0 VAR: hw_mctrl#id DATATYPE: ANYINT,
    U7:IN:1 = B:9 VAR: hw_mctrl#id DATATYPE: ANYINT,
    B:8 = RF:2:OUT:0:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U7:IN:0 = B:8 VAR: hw_const#0 DATATYPE: ANYINT,
    B:27 = U7:OUT:0 INSTR_LOG:1|shuf_func2#||0 VAR: shuf_func2 DATATYPE: BYTE4,
    RF:13:IN:0:REG:5 = B:27 STAGE:-1 VAR: shuf_func2 DATATYPE: BYTE4,
    RF:12:IN:0:REG:6 = B:27 STAGE:-1 VAR: shuf_func2 DATATYPE: BYTE4,
    RF:9:IN:0:REG:1 = B:27 STAGE:-1 VAR: shuf_func2 DATATYPE: BYTE4,
    B:16 = RF:5:OUT:0:REG:1 VAR: cluster#id DATATYPE: ANYINT,
    U2:IN:0 = B:16 VAR: cluster#id DATATYPE: ANYINT,
    B:17 = RF:9:OUT:0:REG:1 VAR: const#4 DATATYPE: ANYINT,
    U2:IN:1 = B:17 VAR: const#4 DATATYPE: ANYINT,
    B:15 = RF:8:OUT:0:REG:2 VAR: const#-9 DATATYPE: ANYINT,
    U1:IN:1 = B:15 VAR: const#-9 DATATYPE: ANYINT,
    B:14 = RF:4:OUT:0:REG:1 VAR: const#-8 DATATYPE: ANYINT,
    U1:IN:0 = B:14 VAR: const#-8 DATATYPE: ANYINT,
    B:30 = U1:OUT:0 INSTR_LOG:1|const#-16#||0 VAR: const#-16 DATATYPE: ANYINT,
    RF:7:IN:0:REG:3 = B:30 STAGE:-1 VAR: const#-16 DATATYPE: ANYINT,
    RF:8:IN:0:REG:2 = B:30 STAGE:-1 VAR: const#-16 DATATYPE: ANYINT,
    RF:10:IN:0:REG:2 = B:30 STAGE:-1 VAR: const#-16 DATATYPE: ANYINT,
    // OUT:MC_0: UC_DATA_IN => ( perm_b == UCRF_0[2] )
    //  IN:COMM_SCHED_0: ( shuf_func2 ) = COMMUCDATA( hw_mctrl#id == PERMRF_0[0], hw_const#0 == UNITRF_0_1[0], uc_const#0x8080801 == UCRF_0[4] )
    // OUT:COMM_SCHED_0: COMMUCDATA => ( shuf_func2 == MULRF_1_1[5], shuf_func2 == MULRF_1_0[6], shuf_func2 == UNITRF_1_3[1] )
    //  IN:ADDER_2: ( low ) = ILT32( cluster#id == UNITRF_0_4[1], const#4 == UNITRF_1_3[1] )
    //  IN:ADDER_1: ( const#-16 ) = AND( const#-9 == UNITRF_1_2[2], const#-8 == UNITRF_0_3[1] )
    // OUT:ADDER_1: AND => ( const#-16 == UNITRF_1_1[3], const#-16 == UNITRF_1_2[2], const#-16 == MULRF_0_0[2] )
    DEAD_REGS: {  };
instr: 16
    MC: OP: NONE LINE:-1 UCRF_RD:3 END:,
    U7: OP: COMMUCDATA LINE:-1 STAGE:-1, // D:\working\im_apps\h264\icolor_kc.i:-1
    U0: OP: IEQ16 LINE:51 STAGE:-1, // D:\working\im_apps\h264\icolor_kc.i:51
    U3: OP: NSELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\icolor_kc.i:-1
    B:9 = RF:15:OUT:0:REG:0 VAR: hw_mctrl#id DATATYPE: ANYINT,
    U7:IN:1 = B:9 VAR: hw_mctrl#id DATATYPE: ANYINT,
    B:8 = RF:2:OUT:0:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U7:IN:0 = B:8 VAR: hw_const#0 DATATYPE: ANYINT,
    B:27 = U7:OUT:0 INSTR_LOG:1|shuf_func1#||0 VAR: shuf_func1 DATATYPE: BYTE4,
    RF:13:IN:0:REG:6 = B:27 STAGE:-1 VAR: shuf_func1 DATATYPE: BYTE4,
    RF:7:IN:0:REG:4 = B:27 STAGE:-1 VAR: shuf_func1 DATATYPE: BYTE4,
    B:12 = RF:3:OUT:0:REG:1 VAR: const#0 DATATYPE: ANYINT,
    U0:IN:0 = B:12 VAR: const#0 DATATYPE: ANYINT,
    B:13 = RF:7:OUT:0:REG:4 VAR: const#1 DATATYPE: ANYINT,
    U0:IN:1 = B:13 VAR: const#1 DATATYPE: ANYINT,
    B:45 = U0:OUT:0 INSTR_LOG:1|Y_combine#||0 VAR: Y_combine DATATYPE: CC,
    RF:18:IN:0:REG:1 = B:45 STAGE:-1 VAR: Y_combine DATATYPE: CC,
    B:47 = U2:OUT:0 INSTR_LOG:2|low#||0 VAR: low DATATYPE: CC,
    RF:18:IN:1:REG:2 = B:47 STAGE:-1 VAR: low DATATYPE: CC,
    B:43 = RF:18:OUT:6:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U3:IN:2 = B:43 VAR: hw_const#0 DATATYPE: ANYINT,
    B:18 = RF:10:OUT:0:REG:2 VAR: const#-16 DATATYPE: ANYINT,
    U3:IN:0 = B:18 VAR: const#-16 DATATYPE: ANYINT,
    B:33 = U3:OUT:1 INSTR_LOG:1|const#-16#||1 VAR: const#-16 DATATYPE: ANYINT,
    RF:9:IN:0:REG:2 = B:33 STAGE:-1 VAR: const#-16 DATATYPE: ANYINT,
    //  IN:COMM_SCHED_0: ( shuf_func1 ) = COMMUCDATA( hw_mctrl#id == PERMRF_0[0], hw_const#0 == UNITRF_0_1[0], uc_const#0x8020800 == UCRF_0[3] )
    // OUT:COMM_SCHED_0: COMMUCDATA => ( shuf_func1 == MULRF_1_1[6], shuf_func1 == UNITRF_1_1[4] )
    //  IN:ADDER_0: ( Y_combine ) = IEQ16( const#0 == UNITRF_0_2[1], const#1 == UNITRF_1_1[4] )
    // OUT:ADDER_0: IEQ16 => ( Y_combine == CCRF_0[1] )
    // OUT:ADDER_2: ILT32 => ( low == CCRF_0[2] )
    //  IN:MULTIPLIER_0: ( const#-16 ) = NSELECT( hw_const#0 == CCRF_0[0], const#-16 == MULRF_0_0[2] )
    // OUT:MULTIPLIER_0: NSELECT => ( const#-16 == UNITRF_1_3[2] )
    DEAD_REGS: {  };
instr: 17
    MC: OP: NONE LINE:-1,
    U3: OP: SHUFFLED LINE:129 STAGE:3, // D:\working\im_apps\h264\icolor_kc.i:129
    U4: OP: SHUFFLED LINE:91 STAGE:2, // D:\working\im_apps\h264\icolor_kc.i:91
    U0: OP: SHIFT16 LINE:101 STAGE:2, // D:\working\im_apps\h264\icolor_kc.i:101
    B:31 = U2:OUT:0 INSTR_LOG:2|y4#||0 VAR: y4 DATATYPE: HALF2,
    RF:11:IN:0:REG:2 = B:31 STAGE:3 VAR: y4 DATATYPE: HALF2,
    B:18 = RF:10:OUT:0:REG:2 VAR: y3 DATATYPE: HALF2,
    U3:IN:0 = B:18 VAR: y3 DATATYPE: HALF2,
    B:19 = RF:12:OUT:0:REG:5 VAR: shuf_func3 DATATYPE: BYTE4,
    U3:IN:1 = B:19 VAR: shuf_func3 DATATYPE: BYTE4,
    B:32 = U3:OUT:0 INSTR_LOG:1|z3#||0 VAR: z3 DATATYPE: HALF2,
    RF:14:IN:0:REG:2 = B:32 STAGE:3 VAR: z3 DATATYPE: HALF2,
    RF:5:IN:0:REG:2 = B:32 STAGE:3 VAR: z3 DATATYPE: HALF2,
    B:30 = U1:OUT:0 INSTR_LOG:2|y2#||0 VAR: y2 DATATYPE: HALF2,
    RF:10:IN:0:REG:2 = B:30 STAGE:3 VAR: y2 DATATYPE: HALF2,
    B:20 = RF:11:OUT:0:REG:2 VAR: color2 DATATYPE: UBYTE4,
    U4:IN:0 = B:20 VAR: color2 DATATYPE: UBYTE4,
    B:21 = RF:13:OUT:0:REG:5 VAR: shuf_func2 DATATYPE: BYTE4,
    U4:IN:1 = B:21 VAR: shuf_func2 DATATYPE: BYTE4,
    B:34 = U4:OUT:0 INSTR_LOG:1|b2#||0 VAR: b2 DATATYPE: HALF2,
    RF:4:IN:0:REG:3 = B:34 STAGE:2 VAR: b2 DATATYPE: HALF2,
    B:12 = RF:3:OUT:0:REG:3 VAR: a2 DATATYPE: HALF2,
    U0:IN:0 = B:12 VAR: a2 DATATYPE: HALF2,
    B:13 = RF:7:OUT:0:REG:0 VAR: hw_const#1 DATATYPE: ANYINT,
    U0:IN:1 = B:13 VAR: hw_const#1 DATATYPE: ANYINT,
    B:29 = U0:OUT:0 INSTR_LOG:1|tmp#19#||0 VAR: tmp#19 DATATYPE: HALF2,
    RF:12:IN:0:REG:7 = B:29 STAGE:2 VAR: tmp#19 DATATYPE: HALF2,
    // OUT:ADDER_2: IADD16 => ( y4 == MULRF_0_1[2] )
    //  IN:MULTIPLIER_0: ( z3 ) = SHUFFLED( y3 == MULRF_0_0[2], shuf_func3 == MULRF_1_0[5] )
    // OUT:MULTIPLIER_0: SHUFFLED => ( z3 == UNITRF_CID_0[2], z3 == UNITRF_0_4[2] )
    // OUT:ADDER_1: IADD16 => ( y2 == MULRF_0_0[2] )
    //  IN:MULTIPLIER_1: ( b2 ) = SHUFFLED( color2 == MULRF_0_1[2], shuf_func2 == MULRF_1_1[5] )
    // OUT:MULTIPLIER_1: SHUFFLED => ( b2 == UNITRF_0_3[3] )
    //  IN:ADDER_0: ( tmp#19 ) = SHIFT16( a2 == UNITRF_0_2[3], hw_const#1 == UNITRF_1_1[0] )
    // OUT:ADDER_0: SHIFT16 => ( tmp#19 == MULRF_1_0[7] )
    DEAD_REGS: {  };
instr: 18
    MC: OP: NONE LINE:-1,
    U2: OP: IADD16 LINE:149 STAGE:3, // D:\working\im_apps\h264\icolor_kc.i:149
    U4: OP: SHUFFLED LINE:130 STAGE:3, // D:\working\im_apps\h264\icolor_kc.i:130
    U0: OP: IADD16 LINE:117 STAGE:3, // D:\working\im_apps\h264\icolor_kc.i:117
    U3: OP: SHUFFLED LINE:128 STAGE:3, // D:\working\im_apps\h264\icolor_kc.i:128
    U1: OP: SHIFT16 LINE:107 STAGE:2, // D:\working\im_apps\h264\icolor_kc.i:107
    U5: OP: NSELECT LINE:-1 STAGE:2, // D:\working\im_apps\h264\icolor_kc.i:-1
    U7: OP: NSELECT LINE:-1 STAGE:2, // D:\working\im_apps\h264\icolor_kc.i:-1
    B:17 = RF:9:OUT:0:REG:3 VAR: z1 DATATYPE: HALF2,
    U2:IN:1 = B:17 VAR: z1 DATATYPE: HALF2,
    B:16 = RF:5:OUT:0:REG:2 VAR: z3 DATATYPE: HALF2,
    U2:IN:0 = B:16 VAR: z3 DATATYPE: HALF2,
    B:20 = RF:11:OUT:0:REG:2 VAR: y4 DATATYPE: HALF2,
    U4:IN:0 = B:20 VAR: y4 DATATYPE: HALF2,
    B:21 = RF:13:OUT:0:REG:4 VAR: shuf_func3 DATATYPE: BYTE4,
    U4:IN:1 = B:21 VAR: shuf_func3 DATATYPE: BYTE4,
    B:34 = U4:OUT:0 INSTR_LOG:1|z4#||0 VAR: z4 DATATYPE: HALF2,
    RF:6:IN:0:REG:5 = B:34 STAGE:3 VAR: z4 DATATYPE: HALF2,
    RF:5:IN:0:REG:2 = B:34 STAGE:3 VAR: z4 DATATYPE: HALF2,
    B:13 = RF:7:OUT:0:REG:5 VAR: a1 DATATYPE: HALF2,
    U0:IN:1 = B:13 VAR: a1 DATATYPE: HALF2,
    B:12 = RF:3:OUT:0:REG:1 VAR: a3 DATATYPE: HALF2,
    U0:IN:0 = B:12 VAR: a3 DATATYPE: HALF2,
    B:18 = RF:10:OUT:0:REG:2 VAR: y2 DATATYPE: HALF2,
    U3:IN:0 = B:18 VAR: y2 DATATYPE: HALF2,
    B:19 = RF:12:OUT:0:REG:5 VAR: shuf_func3 DATATYPE: BYTE4,
    U3:IN:1 = B:19 VAR: shuf_func3 DATATYPE: BYTE4,
    B:32 = U3:OUT:0 INSTR_LOG:1|z2#||0 VAR: z2 DATATYPE: HALF2,
    RF:2:IN:0:REG:3 = B:32 STAGE:3 VAR: z2 DATATYPE: HALF2,
    RF:9:IN:0:REG:3 = B:32 STAGE:3 VAR: z2 DATATYPE: HALF2,
    B:14 = RF:4:OUT:0:REG:3 VAR: b2 DATATYPE: HALF2,
    U1:IN:0 = B:14 VAR: b2 DATATYPE: HALF2,
    B:15 = RF:8:OUT:0:REG:0 VAR: hw_const#1 DATATYPE: ANYINT,
    U1:IN:1 = B:15 VAR: hw_const#1 DATATYPE: ANYINT,
    B:30 = U1:OUT:0 INSTR_LOG:1|tmp#31#||0 VAR: tmp#31 DATATYPE: HALF2,
    RF:10:IN:0:REG:2 = B:30 STAGE:2 VAR: tmp#31 DATATYPE: HALF2,
    B:39 = RF:18:OUT:2:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U5:IN:2 = B:39 VAR: hw_const#0 DATATYPE: ANYINT,
    B:10 = RF:6:OUT:0:REG:4 VAR: color4 DATATYPE: UBYTE4,
    U5:IN:0 = B:10 VAR: color4 DATATYPE: UBYTE4,
    B:28 = U5:OUT:0 INSTR_LOG:1|color4#||0 VAR: color4 DATATYPE: UBYTE4,
    RF:3:IN:0:REG:3 = B:28 STAGE:2 VAR: color4 DATATYPE: UBYTE4,
    B:38 = RF:18:OUT:1:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U7:IN:2 = B:38 VAR: hw_const#0 DATATYPE: ANYINT,
    B:8 = RF:2:OUT:0:REG:3 VAR: color3 DATATYPE: UBYTE4,
    U7:IN:0 = B:8 VAR: color3 DATATYPE: UBYTE4,
    B:27 = U7:OUT:0 INSTR_LOG:1|color3#||0 VAR: color3 DATATYPE: UBYTE4,
    RF:11:IN:0:REG:2 = B:27 STAGE:2 VAR: color3 DATATYPE: UBYTE4,
    //  IN:ADDER_2: ( tmp#62 ) = IADD16( z1 == UNITRF_1_3[3], z3 == UNITRF_0_4[2] )
    //  IN:MULTIPLIER_1: ( z4 ) = SHUFFLED( y4 == MULRF_0_1[2], shuf_func3 == MULRF_1_1[4] )
    // OUT:MULTIPLIER_1: SHUFFLED => ( z4 == UNITRF_1_0[5], z4 == UNITRF_0_4[2] )
    //  IN:ADDER_0: ( a1a3 ) = IADD16( a1 == UNITRF_1_1[5], a3 == UNITRF_0_2[1] )
    //  IN:MULTIPLIER_0: ( z2 ) = SHUFFLED( y2 == MULRF_0_0[2], shuf_func3 == MULRF_1_0[5] )
    // OUT:MULTIPLIER_0: SHUFFLED => ( z2 == UNITRF_0_1[3], z2 == UNITRF_1_3[3] )
    //  IN:ADDER_1: ( tmp#31 ) = SHIFT16( b2 == UNITRF_0_3[3], hw_const#1 == UNITRF_1_2[0] )
    // OUT:ADDER_1: SHIFT16 => ( tmp#31 == MULRF_0_0[2] )
    //  IN:DIVIDER_0: ( color4 ) = NSELECT( hw_const#0 == CCRF_0[0], color4 == UNITRF_1_0[4] )
    // OUT:DIVIDER_0: NSELECT => ( color4 == UNITRF_0_2[3] )
    //  IN:COMM_SCHED_0: ( color3 ) = NSELECT( hw_const#0 == CCRF_0[0], color3 == UNITRF_0_1[3] )
    // OUT:COMM_SCHED_0: NSELECT => ( color3 == MULRF_0_1[2] )
    DEAD_REGS: {  };
instr: 19
    MC: OP: NONE LINE:-1,
    U2: OP: IADD16 LINE:150 STAGE:3, // D:\working\im_apps\h264\icolor_kc.i:150
    U1: OP: IADD16 LINE:118 STAGE:3, // D:\working\im_apps\h264\icolor_kc.i:118
    U7: OP: SELECT LINE:132 STAGE:3, // D:\working\im_apps\h264\icolor_kc.i:132
    U3: OP: IMULRND16 LINE:101 STAGE:2, // D:\working\im_apps\h264\icolor_kc.i:101
    U5: OP: NSELECT LINE:-1 STAGE:2, // D:\working\im_apps\h264\icolor_kc.i:-1
    U4: OP: SHUFFLED LINE:89 STAGE:1, // D:\working\im_apps\h264\icolor_kc.i:89
    B:17 = RF:9:OUT:0:REG:3 VAR: z2 DATATYPE: HALF2,
    U2:IN:1 = B:17 VAR: z2 DATATYPE: HALF2,
    B:16 = RF:5:OUT:0:REG:2 VAR: z4 DATATYPE: HALF2,
    U2:IN:0 = B:16 VAR: z4 DATATYPE: HALF2,
    B:31 = U2:OUT:0 INSTR_LOG:2|tmp#62#||0 VAR: tmp#62 DATATYPE: HALF2,

⌨️ 快捷键说明

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