;------------------------- ;------------------------- ;-----VCL CODE------------ ;------------------------- ;------------------------- ; ================================================= ; flowMon::Emit() vcl 1.4beta7 produced this code: .vu .align 4 .global VU1Draw3D_CodeStart .global VU1Draw3D_CodeEnd VU1Draw3D_CodeStart: __v_draw3D_vcl_4: ; _LNOPT_w=[ normal2 ] 27 [27 0] 27 [__v_draw3D_vcl_4] NOP xtop VI06 NOP lq VF02,1(VI00) NOP lq VF01,0(VI00) NOP ilw.x VI01,4(VI06) NOP ilw.y VI08,4(VI06) NOP lq VF03,0(VI06) NOP lq VF04,1(VI06) NOP lq VF08,5(VI06) NOP lq VF10,6(VI06) NOP lq VF05,2(VI06) NOP lq VF06,3(VI06) NOP iaddiu VI04,VI06,0x00000009 NOP iadd VI05,VI04,VI08 NOP ilw.z VI02,4(VI06) NOP iadd VI07,VI05,VI08 NOP loi 0x44fff000 NOP ilw.w VI03,4(VI06) NOP lq VF07,7(VI06) NOP sqi VF02,(VI07++) NOP sqi VF08,(VI07++) NOP sqi VF02,(VI07++) NOP lq VF08,8(VI06) NOP iadd VI06,VI05,VI08 addi.xy VF09,VF00,I loi 0x492aaaaa NOP fcset 0 NOP iblez VI01,prim_tag_l addi.z VF09,VF00,I sqi VF10,(VI07++) ; _LNOPT_w=[ normal2 ] 2 [2 0] 2 [__v_draw3D_vcl_5] NOP sqi VF02,(VI07++) NOP sqi VF01,(VI07++) prim_tag_l: ; _LNOPT_w=[ normal2 ] 4 [4 0] 4 [prim_tag_l] NOP iaddiu VI08,VI00,0x00007fff NOP sqi VF07,(VI07++) NOP iaddiu VI08,VI08,0x00000001 NOP iaddiu VI09,VI00,0 triangle_loop: ; _LNOPT_w=[ normal2 ] 11 [27 0] 27 [triangle_loop] NOP lq VF02,0(VI04) mulax ACC,VF03,VF02x mfir.w VF01,VI08 ; STALL_LATENCY ?3 madday ACC,VF04,VF02y NOP maddaz ACC,VF05,VF02z NOP maddw VF02,VF06,VF02w NOP clipw.xyz VF02xyz,VF02w div Q,VF00w,VF02w ; STALL_LATENCY ?3 mulq.xyz VF02,VF02,Q waitq ; STALL_LATENCY ?6 mulaw.xyz ACC,VF09,VF00w NOP madd.xyz VF02,VF02,VF09 NOP ; STALL_LATENCY ?2 NOP ibgtz VI03,vec_1_rgba ftoi4.xyz VF01,VF02 NOP ; STALL_LATENCY ?2 ; _LNOPT_w=[ normal2 ] 5 [9 0] 9 [vec_1_stq_rgba] NOP lq VF02,0(VI05) mulq VF01,VF02,Q sq VF01,2(VI07) ; STALL_LATENCY ?3 NOP sq VF08,1(VI07) NOP b vec2 NOP sq VF01,0(VI07) ; STALL_LATENCY ?1 vec_1_rgba: ; _LNOPT_w=[ normal2 ] 4 [2 0] 4 [vec_1_rgba] NOP NOP NOP NOP NOP sq VF08,0(VI07) NOP sq VF01,1(VI07) vec2: ; _LNOPT_w=[ normal2 ] 11 [27 0] 27 [vec2] NOP lq VF02,1(VI04) mulax ACC,VF03,VF02x mfir.w VF01,VI08 ; STALL_LATENCY ?3 madday ACC,VF04,VF02y NOP maddaz ACC,VF05,VF02z NOP maddw VF02,VF06,VF02w NOP clipw.xyz VF02xyz,VF02w div Q,VF00w,VF02w ; STALL_LATENCY ?3 mulq.xyz VF02,VF02,Q waitq ; STALL_LATENCY ?6 mulaw.xyz ACC,VF09,VF00w NOP madd.xyz VF02,VF02,VF09 NOP ; STALL_LATENCY ?2 NOP ibgtz VI03,vec_2_rgba ftoi4.xyz VF01,VF02 NOP ; STALL_LATENCY ?2 ; _LNOPT_w=[ normal2 ] 5 [9 0] 9 [vec_2_stq_rgba] NOP lq VF02,1(VI05) mulq VF01,VF02,Q sq VF01,5(VI07) ; STALL_LATENCY ?3 NOP sq VF08,4(VI07) NOP b vec3 NOP sq VF01,3(VI07) ; STALL_LATENCY ?1 vec_2_rgba: ; _LNOPT_w=[ normal2 ] 4 [2 0] 4 [vec_2_rgba] NOP NOP NOP NOP NOP sq VF08,2(VI07) NOP sq VF01,3(VI07) vec3: ; _LNOPT_w=[ normal2 ] 13 [27 0] 27 [vec3] NOP lq VF01,2(VI04) mulax ACC,VF03,VF01x NOP ; STALL_LATENCY ?3 madday ACC,VF04,VF01y NOP maddaz ACC,VF05,VF01z NOP maddw VF01,VF06,VF01w NOP clipw.xyz VF01xyz,VF01w div Q,VF00w,VF01w ; STALL_LATENCY ?3 mulq.xyz VF01,VF01,Q waitq ; STALL_LATENCY ?6 mulaw.xyz ACC,VF09,VF00w NOP madd.xyz VF01,VF01,VF09 fcand VI01,262143 ; STALL_LATENCY ?2 NOP iaddiu VI01,VI01,0x00007fff NOP mfir.w VF01,VI01 NOP ibgtz VI03,vec_3_rgba ftoi4.xyz VF01,VF01 NOP ; _LNOPT_w=[ normal2 ] 6 [9 0] 9 [vec_3_stq_rgba] NOP lq VF02,2(VI05) mulq VF01,VF02,Q sq VF01,8(VI07) ; STALL_LATENCY ?3 NOP sq VF08,7(VI07) NOP iaddiu VI07,VI07,0x00000009 NOP b loop_ctrl NOP sq VF01,-3(VI07) vec_3_rgba: ; _LNOPT_w=[ normal2 ] 4 [3 0] 4 [vec_3_rgba] NOP NOP NOP sq VF08,4(VI07) NOP iaddiu VI07,VI07,0x00000006 NOP sq VF01,-1(VI07) loop_ctrl: ; _LNOPT_w=[ normal2 ] 4 [4 0] 4 [loop_ctrl] NOP iaddiu VI09,VI09,0x00000001 NOP iaddiu VI04,VI04,0x00000003 NOP ibne VI09,VI02,triangle_loop NOP iaddiu VI05,VI05,0x00000003 ; _LNOPT_w=[ normal2 ] 3 [1 0] 3 [__v_draw3D_vcl_21] NOP xgkick VI06 NOP[E] NOP NOP NOP .align 4 VU1Draw3D_CodeEnd: ; iCount=103 ; register stats: ; 10 VU User integer ; 11 VU User floating point ;------------------------- ;------------------------- ;------------------------- ;------------------------- ;-------------------------