me_fast_jitter1_kc.uc

来自「H.264完整的C语言代码和DCT的代码」· UC 代码 · 共 978 行 · 第 1/5 页

UC
978
字号
    U3: OP: NSELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    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:9 = RF:15:OUT:0:REG:2 VAR: i DATATYPE: INT,
    U7:IN:1 = B:9 VAR: i DATATYPE: INT,
    B:17 = RF:9:OUT:0:REG:5 VAR: const#3 DATATYPE: ANYINT,
    U2:IN:1 = B:17 VAR: const#3 DATATYPE: ANYINT,
    B:16 = RF:5:OUT:0:REG:2 VAR: const#4 DATATYPE: ANYINT,
    U2:IN:0 = B:16 VAR: const#4 DATATYPE: ANYINT,
    B:31 = U2:OUT:0 INSTR_LOG:1|const#7#||0 VAR: const#7 DATATYPE: ANYINT,
    RF:7:IN:0:REG:5 = B:31 STAGE:-1 VAR: const#7 DATATYPE: ANYINT,
    RF:9:IN:0:REG:5 = B:31 STAGE:-1 VAR: const#7 DATATYPE: ANYINT,
    RF:3:IN:0:REG:3 = B:31 STAGE:-1 VAR: const#7 DATATYPE: ANYINT,
    RF:4:IN:0:REG:5 = B:31 STAGE:-1 VAR: const#7 DATATYPE: ANYINT,
    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:11 = RF:14:OUT:0:REG:0 VAR: cluster#id DATATYPE: ANYINT,
    U5:IN:1 = B:11 VAR: cluster#id DATATYPE: ANYINT,
    B:28 = U5:OUT:0 INSTR_LOG:1|cluster#id#||0 VAR: cluster#id DATATYPE: ANYINT,
    RF:8:IN:0:REG:7 = B:28 STAGE:-1 VAR: cluster#id DATATYPE: ANYINT,
    B:44 = RF:18:OUT:7:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U4:IN:2 = B:44 VAR: hw_const#0 DATATYPE: ANYINT,
    B:21 = RF:13:OUT:0:REG:5 VAR: idx DATATYPE: INT,
    U4:IN:1 = B:21 VAR: idx DATATYPE: INT,
    B:35 = U4:OUT:1 INSTR_LOG:1|idx#||1 VAR: idx DATATYPE: INT,
    RF:17:IN:0:REG:2 = B:35 STAGE:-1 VAR: idx DATATYPE: INT,
    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:1 VAR: idx DATATYPE: INT,
    U3:IN:0 = B:18 VAR: idx DATATYPE: INT,
    B:33 = U3:OUT:1 INSTR_LOG:1|idx#||1 VAR: idx DATATYPE: INT,
    RF:5:IN:0:REG:4 = B:33 STAGE:-1 VAR: idx DATATYPE: INT,
    //  IN:COMM_SCHED_0: ( i ) = COMMXUCDATA( hw_const#0 == UNITRF_0_1[0], i == PERMRF_0[2] )
    //  IN:ADDER_2: ( const#7 ) = OR( const#3 == UNITRF_1_3[5], const#4 == UNITRF_0_4[2] )
    // OUT:ADDER_2: OR => ( const#7 == UNITRF_1_1[5], const#7 == UNITRF_1_3[5], const#7 == UNITRF_0_2[3], const#7 == UNITRF_0_3[5] )
    //  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_1_2[7] )
    //  IN:MULTIPLIER_1: ( idx ) = SELECT( hw_const#0 == CCRF_0[0], idx == MULRF_1_1[5] )
    // OUT:MULTIPLIER_1: SELECT => ( idx == SPIDXRF_1[2] )
    //  IN:MULTIPLIER_0: ( idx ) = NSELECT( hw_const#0 == CCRF_0[0], idx == MULRF_0_0[1] )
    // OUT:MULTIPLIER_0: NSELECT => ( idx == UNITRF_0_4[4] )
    DEAD_REGS: {  };
instr: 30
    MC: OP: NONE LINE:-1 UCRF_RD:4 UCRF_WR:5 STAGES:-1,
    U7: OP: COMMUCDATA LINE:48 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:48
    U1: OP: SHIFT32 LINE:57 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:57
    U4: OP: NSELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    U0: OP: SHIFT32 LINE:56 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:56
    U5: OP: SELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    U3: OP: NSELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    U2: OP: SELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    B:9 = RF:15:OUT:0:REG:0 VAR: hw_const#8 DATATYPE: ANYINT,
    U7:IN:1 = B:9 VAR: hw_const#8 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|mb_width#||0 VAR: mb_width DATATYPE: UINT,
    RF:3:IN:0:REG:6 = B:27 STAGE:-1 VAR: mb_width DATATYPE: UINT,
    B:14 = RF:4:OUT:0:REG:6 VAR: xoffset DATATYPE: UINT,
    U1:IN:0 = B:14 VAR: xoffset DATATYPE: UINT,
    B:15 = RF:8:OUT:0:REG:1 VAR: const#-1 DATATYPE: ANYINT,
    U1:IN:1 = B:15 VAR: const#-1 DATATYPE: ANYINT,
    B:30 = U1:OUT:0 INSTR_LOG:1|tmp#126#||0 VAR: tmp#126 DATATYPE: UINT,
    RF:9:IN:0:REG:6 = B:30 STAGE:-1 VAR: tmp#126 DATATYPE: UINT,
    B:44 = RF:18:OUT:7:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U4:IN:2 = B:44 VAR: hw_const#0 DATATYPE: ANYINT,
    B:20 = RF:11:OUT:0:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U4:IN:0 = B:20 VAR: hw_const#0 DATATYPE: ANYINT,
    B:35 = U4:OUT:1 INSTR_LOG:1|const#0#||1 VAR: const#0 DATATYPE: ANYINT,
    RF:8:IN:0:REG:8 = B:35 STAGE:-1 VAR: const#0 DATATYPE: ANYINT,
    B:12 = RF:3:OUT:0:REG:4 VAR: offsets DATATYPE: UINT,
    U0:IN:0 = B:12 VAR: offsets DATATYPE: UINT,
    B:13 = RF:7:OUT:0:REG:7 VAR: const#-16 DATATYPE: ANYINT,
    U0:IN:1 = B:13 VAR: const#-16 DATATYPE: ANYINT,
    B:29 = U0:OUT:0 INSTR_LOG:1|yoffset#||0 VAR: yoffset DATATYPE: UINT,
    RF:4:IN:0:REG:6 = B:29 STAGE:-1 VAR: yoffset DATATYPE: UINT,
    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:11 = RF:14:OUT:0:REG:3 VAR: idx DATATYPE: INT,
    U5:IN:1 = B:11 VAR: idx DATATYPE: INT,
    B:28 = U5:OUT:0 INSTR_LOG:1|idx#||0 VAR: idx DATATYPE: INT,
    RF:17:IN:0:REG:2 = B:28 STAGE:-1 VAR: idx DATATYPE: INT,
    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:1 VAR: idx DATATYPE: INT,
    U3:IN:0 = B:18 VAR: idx DATATYPE: INT,
    B:33 = U3:OUT:1 INSTR_LOG:1|idx#||1 VAR: idx DATATYPE: INT,
    RF:5:IN:0:REG:5 = B:33 STAGE:-1 VAR: idx DATATYPE: INT,
    B:42 = RF:18:OUT:5:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U2:IN:2 = B:42 VAR: hw_const#0 DATATYPE: ANYINT,
    B:17 = RF:9:OUT:0:REG:6 VAR: left_margin DATATYPE: INT,
    U2:IN:1 = B:17 VAR: left_margin DATATYPE: INT,
    B:31 = U2:OUT:0 INSTR_LOG:1|left_margin#||0 VAR: left_margin DATATYPE: INT,
    RF:7:IN:0:REG:7 = B:31 STAGE:-1 VAR: left_margin DATATYPE: INT,
    // OUT:COMM_SCHED_0: COMM_WR_UCR => ( loopcnt == UCRF_0[5] )
    //  IN:COMM_SCHED_0: ( mb_width ) = COMMUCDATA( hw_const#8 == PERMRF_0[0], hw_const#0 == UNITRF_0_1[0], uc_mb_width == UCRF_0[4] )
    // OUT:COMM_SCHED_0: COMMUCDATA => ( mb_width == UNITRF_0_2[6] )
    //  IN:ADDER_1: ( tmp#126 ) = SHIFT32( xoffset == UNITRF_0_3[6], const#-1 == UNITRF_1_2[1] )
    // OUT:ADDER_1: SHIFT32 => ( tmp#126 == UNITRF_1_3[6] )
    //  IN:MULTIPLIER_1: ( const#0 ) = NSELECT( hw_const#0 == CCRF_0[0], hw_const#0 == MULRF_0_1[0] )
    // OUT:MULTIPLIER_1: NSELECT => ( const#0 == UNITRF_1_2[8] )
    //  IN:ADDER_0: ( yoffset ) = SHIFT32( offsets == UNITRF_0_2[4], const#-16 == UNITRF_1_1[7] )
    // OUT:ADDER_0: SHIFT32 => ( yoffset == UNITRF_0_3[6] )
    //  IN:DIVIDER_0: ( idx ) = SELECT( hw_const#0 == CCRF_0[0], idx == UNITRF_CID_0[3] )
    // OUT:DIVIDER_0: SELECT => ( idx == SPIDXRF_1[2] )
    //  IN:MULTIPLIER_0: ( idx ) = NSELECT( hw_const#0 == CCRF_0[0], idx == MULRF_0_0[1] )
    // OUT:MULTIPLIER_0: NSELECT => ( idx == UNITRF_0_4[5] )
    //  IN:ADDER_2: ( left_margin ) = SELECT( hw_const#0 == CCRF_0[0], left_margin == UNITRF_1_3[6] )
    // OUT:ADDER_2: SELECT => ( left_margin == UNITRF_1_1[7] )
    DEAD_REGS: {  };
instr: 31
    MC: OP: CHK_UCR LINE:99 UCRF_RD:5 UCONDRF_WR:1 STAGES:-1,
    U0: OP: ISUB32 LINE:85 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:85
    U5: OP: SELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    U1: OP: SHIFT32 LINE:58 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:58
    U2: OP: OR LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    U4: OP: SELECT LINE:83 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:83
    U3: OP: NSELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    B:12 = RF:3:OUT:0:REG:0 VAR: hw_const#0 DATATYPE: ANYINT,
    U0:IN:0 = B:12 VAR: hw_const#0 DATATYPE: ANYINT,
    B:13 = RF:7:OUT:0:REG:7 VAR: left_margin DATATYPE: INT,
    U0:IN:1 = B:13 VAR: left_margin DATATYPE: INT,
    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:11 = RF:14:OUT:0:REG:0 VAR: tmp#125 DATATYPE: UINT,
    U5:IN:1 = B:11 VAR: tmp#125 DATATYPE: UINT,
    B:28 = U5:OUT:0 INSTR_LOG:1|cluster#id#||0 VAR: cluster#id DATATYPE: ANYINT,
    RF:5:IN:0:REG:1 = B:28 STAGE:-1 VAR: cluster#id DATATYPE: ANYINT,
    B:14 = RF:4:OUT:0:REG:6 VAR: yoffset DATATYPE: UINT,
    U1:IN:0 = B:14 VAR: yoffset DATATYPE: UINT,
    B:15 = RF:8:OUT:0:REG:1 VAR: const#-1 DATATYPE: ANYINT,
    U1:IN:1 = B:15 VAR: const#-1 DATATYPE: ANYINT,
    B:30 = U1:OUT:0 INSTR_LOG:1|crefy#||0 VAR: crefy DATATYPE: UINT,
    RF:3:IN:0:REG:4 = B:30 STAGE:-1 VAR: crefy DATATYPE: UINT,
    B:16 = RF:5:OUT:0:REG:1 VAR: const#8 DATATYPE: ANYINT,
    U2:IN:0 = B:16 VAR: const#8 DATATYPE: ANYINT,
    B:17 = RF:9:OUT:0:REG:7 VAR: const#4 DATATYPE: ANYINT,
    U2:IN:1 = B:17 VAR: const#4 DATATYPE: ANYINT,
    B:31 = U2:OUT:0 INSTR_LOG:1|const#12#||0 VAR: const#12 DATATYPE: ANYINT,
    RF:8:IN:0:REG:6 = B:31 STAGE:-1 VAR: const#12 DATATYPE: ANYINT,
    B:44 = RF:18:OUT:7:REG:2 VAR: tmp#130 DATATYPE: CC,
    U4:IN:2 = B:44 VAR: tmp#130 DATATYPE: CC,
    B:20 = RF:11:OUT:0:REG:3 VAR: top_margin DATATYPE: INT,
    U4:IN:0 = B:20 VAR: top_margin DATATYPE: INT,
    B:21 = RF:13:OUT:0:REG:4 VAR: const#16 DATATYPE: ANYINT,
    U4:IN:1 = B:21 VAR: const#16 DATATYPE: ANYINT,
    B:35 = U4:OUT:1 INSTR_LOG:1|tmp#131#||1 VAR: tmp#131 DATATYPE: INT,
    RF:9:IN:0:REG:7 = B:35 STAGE:-1 VAR: tmp#131 DATATYPE: INT,
    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:1 VAR: idx DATATYPE: INT,
    U3:IN:0 = B:18 VAR: idx DATATYPE: INT,
    B:33 = U3:OUT:1 INSTR_LOG:1|idx#||1 VAR: idx DATATYPE: INT,
    RF:17:IN:0:REG:2 = B:33 STAGE:-1 VAR: idx DATATYPE: INT,
    //  IN:MC_0: ( tmp#143 ) = CHK_UCR( loopcnt == UCRF_0[5] )
    // OUT:MC_0: CHK_UCR => ( tmp#143 == UCONDRF_0[1] )
    //  IN:ADDER_0: ( left_range#173 ) = ISUB32( hw_const#0 == UNITRF_0_2[0], left_margin == UNITRF_1_1[7] )
    //  IN:DIVIDER_0: ( cluster#id ) = SELECT( hw_const#0 == CCRF_0[0], tmp#125 == UNITRF_CID_0[0] )
    // OUT:DIVIDER_0: SELECT => ( cluster#id == UNITRF_0_4[1] )
    //  IN:ADDER_1: ( crefy ) = SHIFT32( yoffset == UNITRF_0_3[6], const#-1 == UNITRF_1_2[1] )
    // OUT:ADDER_1: SHIFT32 => ( crefy == UNITRF_0_2[4] )
    //  IN:ADDER_2: ( const#12 ) = OR( const#8 == UNITRF_0_4[1], const#4 == UNITRF_1_3[7] )
    // OUT:ADDER_2: OR => ( const#12 == UNITRF_1_2[6] )
    //  IN:MULTIPLIER_1: ( tmp#131 ) = SELECT( tmp#130 == CCRF_0[2], top_margin == MULRF_0_1[3], const#16 == MULRF_1_1[4] )
    // OUT:MULTIPLIER_1: SELECT => ( tmp#131 == UNITRF_1_3[7] )
    //  IN:MULTIPLIER_0: ( idx ) = NSELECT( hw_const#0 == CCRF_0[0], idx == MULRF_0_0[1] )
    // OUT:MULTIPLIER_0: NSELECT => ( idx == SPIDXRF_1[2] )
    DEAD_REGS: {  };
instr: 32
    MC: OP: NLOOP LINE:99 UCONDRF_RD:1 BR_OFF:8 LAST_STAGE:2,
    U2: OP: IADD32 LINE:57 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:57
    U1: OP: NOT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    U5: OP: SELECT LINE:-1 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:-1
    U3: OP: SELECT LINE:84 STAGE:-1, // D:\working\im_apps\h264\me_fast_jitter1_kc.i:84
    B:29 = U0:OUT:0 INSTR_LOG:2|left_range#173#||0 VAR: left_range#173 DATATYPE: INT,
    RF:8:IN:0:REG:9 = B:29 STAGE:-1 VAR: left_range#173 DATATYPE: INT,
    RF:3:IN:0:REG:7 = B:29 STAGE:-1 VAR: left_range#173 DATATYPE: INT,
    RF:15:IN:0:REG:2 = B:29 STAGE:-1 VAR: left_range#173 DATATYPE: INT,
    RF:7:IN:0:REG:10 = B:29 STAGE:-1 VAR: left_range#173 DATATYPE: INT,
    B:17 = RF:9:OUT:0:REG:6 VAR: tmp#126 DATATYPE: UINT,
    U2:IN:1 = B:17 VAR: tmp#126 DATATYPE: UINT,
    B:16 = RF:5:OUT:0:REG:1 VAR: cluster#id DATATYPE: ANYINT,
    U2:IN:0 = B:16 VAR: cluster#id DATATYPE: ANYINT,
    B:14 = RF:4:OUT:0:REG:1 VAR: const#2 DATATYPE: ANYINT,
    U1:IN:0 = B:14 VAR: const#2 DATATYPE: ANYINT,
    B:30 = U1:OUT:0 INSTR_LOG:1|const#-3#||0 VAR: const#-3 DATATYPE: ANYINT,
    RF:9:IN:0:REG:6 = B:30 STAGE:-1 VAR: const#-3 DATATYPE: ANYINT,
    RF:10:IN:0:REG:1 = B:30 STAGE:-1 VAR: const#-3 DATATYPE: ANYINT,
    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:11 = RF:14:OUT:0:REG:3 VAR: idx DATATYPE: INT,
    U5:IN:1 = B:11 VAR: idx DATATYPE: INT,
    B:28 = U5:OUT:0 INSTR_LOG:1|idx#||0 VAR: idx DATATYPE: INT,
    RF:17:IN:0:REG:2 = B:28 STAGE:-1 VAR: idx DATATYPE: INT,
    B:43 

⌨️ 快捷键说明

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