Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.c-torture/compile/pr35869.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
struct texture_stage_op { unsigned int carg1, carg2, carg0; unsigned int aarg1, aarg2, aarg0; unsigned int dst; }; static const char *debug_register(unsigned int reg) { switch(reg) { case 0x8921: return "GL_REG_0_ATI"; case 0x8923: return "GL_REG_2_ATI"; case 0x0: return "GL_ZERO"; case 0x1: return "GL_ONE"; default: return "Unknown register\n"; } } static unsigned int find_tmpreg(struct texture_stage_op op[8]) { int i; int tex_used[8]; for(i = 0; i < 8; i++) { if(op[i].carg1 == 0x00000002 ) { tex_used[i] = 1; } } for(i = 1; i < 6; i++) { if(!tex_used[i]) { return 0x8921 + i; } } return 0; } extern f(const char*); void g() { struct texture_stage_op op[8]; unsigned int tmparg = find_tmpreg(op); unsigned int dstreg; if(tmparg == 0x0) return; dstreg = tmparg; f(debug_register(dstreg)); return; }