r600 : change shader pop method for now.
This commit is contained in:
@@ -39,7 +39,7 @@
|
||||
#include "r700_assembler.h"
|
||||
|
||||
#define USE_CF_FOR_CONTINUE_BREAK 1
|
||||
#define USE_CF_FOR_POP_AFTER 1
|
||||
//#define USE_CF_FOR_POP_AFTER 1
|
||||
|
||||
BITS addrmode_PVSDST(PVSDST * pPVSDST)
|
||||
{
|
||||
@@ -4983,30 +4983,30 @@ GLboolean assemble_EXPORT(r700_AssemblerBase *pAsm)
|
||||
|
||||
inline void checkStackDepth(r700_AssemblerBase *pAsm, GLuint uReason)
|
||||
{
|
||||
switch (uReason)
|
||||
{
|
||||
case FC_PUSH_VPM:
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs++;
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.current++;
|
||||
break;
|
||||
case FC_PUSH_WQM:
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs++;
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.current += 4;
|
||||
break;
|
||||
case FC_LOOP:
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs += 4;
|
||||
break;
|
||||
case FC_REP:
|
||||
/* TODO : for 16 vp asic, should += 2; */
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs += 1;
|
||||
break;
|
||||
};
|
||||
|
||||
if(pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs
|
||||
> pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.max)
|
||||
{
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.max =
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs;
|
||||
switch (uReason)
|
||||
{
|
||||
case FC_PUSH_VPM:
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs++;
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.current++;
|
||||
break;
|
||||
case FC_PUSH_WQM:
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs++;
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.current += 4;
|
||||
break;
|
||||
case FC_LOOP:
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs += 4;
|
||||
break;
|
||||
case FC_REP:
|
||||
/* TODO : for 16 vp asic, should += 2; */
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs += 1;
|
||||
break;
|
||||
};
|
||||
|
||||
if(pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs
|
||||
> pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.max)
|
||||
{
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.max =
|
||||
pAsm->CALLSTACK[pAsm->CALLSP].stackUsage.su.pushs;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5657,8 +5657,8 @@ GLboolean testFlag(r700_AssemblerBase *pAsm)
|
||||
{
|
||||
return GL_FALSE;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
checkStackDepth(pAsm, FC_PUSH_VPM);
|
||||
|
||||
return GL_TRUE;
|
||||
|
||||
Reference in New Issue
Block a user