- 论坛徽章:
- 0
|
本帖最后由 TOK_Wang 于 2010-08-21 00:25 编辑
你们已经在SSA上做了哪些优化?
steven_known 发表于 2010-08-20 11:11 ![]()
: SC Generated
gtkings()
{
L0:
L1:
L2:
L3:
L4:
L5:
L6:
L7:
L8:
%$R.1 = a1+a1;
if ( %$R.1 ) FALSE goto L15:
L9:
%$R.1 = a1+a1;
if ( %$R.1 ) FALSE goto L15:
L10:
%$R.1 = a1+a1;
a2 = %$R.1 ;
L11:
%$R.2 = a2+a2;
a3 = %$R.2 ;
L12:
%$R.1 = %$SSA_MEG(a3,a1)+%$SSA_MEG(a3,a1);
if ( %$R.1 ) FALSE goto L15:
L13:
%$R.1 = %$SSA_MEG(a3,a1)+%$SSA_MEG(a3,a1);
a4 = %$R.1 ;
L14:
%$R.2 = a4+a4;
a5 = %$R.2 ;
goto L15:
goto L15:
goto L15:
L15:
%$R.1 = %$SSA_MEG(a5,a3,a1)+%$SSA_MEG(a5,a3,a1);
if ( %$R.1 ) FALSE goto L18:
L16:
%$R.1 = %$SSA_MEG(a5,a3,a1)+%$SSA_MEG(a5,a3,a1);
a6 = %$R.1 ;
L17:
%$R.2 = a6+a6;
a7 = %$R.2 ;
goto L18:
L18:
%$R.1 = %$SSA_MEG(a1,a3,a5,a7)+%$SSA_MEG(a1,a3,a5,a7);
if ( %$R.1 ) FALSE goto L28:
L19:
%$R.1 = %$SSA_MEG(a7,a5,a3,a1)+%$SSA_MEG(a7,a5,a3,a1);
if ( %$R.1 ) FALSE goto L28:
L20:
%$R.1 = %$SSA_MEG(a7,a5,a3,a1)+%$SSA_MEG(a7,a5,a3,a1);
a8 = %$R.1 ;
L21:
%$R.2 = a8+a8;
a9 = %$R.2 ;
L22:
%$R.1 = %$SSA_MEG(a9,a7,a5,a3,a1)+%$SSA_MEG(a9,a7,a5,a3,a1);
if ( %$R.1 ) FALSE goto L28:
L23:
%$R.1 = %$SSA_MEG(a9,a7,a5,a3,a1)+%$SSA_MEG(a9,a7,a5,a3,a1);
a10 = %$R.1 ;
L24:
%$R.2 = a10+a10;
a11 = %$R.2 ;
goto L28:
L25:
%$R.3 = e1+b1;
a12 = %$R.3 ;
L26:
%$R.4 = a12+b1;
e2 = %$R.4 ;
goto L28:
L27:
%$R.1 = %$SSA_MEG(e2,e1)+%$SSA_MEG(a12,a11,a3,a1);
b2 = %$R.1 ;
goto L28:
L28:
%$R.1 = %$SSA_MEG(b2,b1)+%$SSA_MEG(a12,a11,a3,a1);
e3 = %$R.1 ;
L29:
%$R.2 = %$SSA_MEG(b2,b1)+%$SSA_MEG(b2,b1);
b3 = %$R.2 ;
L30:
%$R.3 = %$SSA_MEG(a12,a11,a3,a1)+%$SSA_MEG(a12,a11,a3,a1);
a13 = %$R.3 ;
}
只是在IR中实现了SSA,其它还在逐步完善。 |
|