1/* { dg-options "-O3 -fgraphite-identity" } */ 2 3typedef struct sv TEST_SV; 4typedef struct av TEST_AV; 5typedef struct magic TEST_MAGIC; 6typedef struct xpvav TEST_XPVAV; 7struct sv 8{ 9 void* sv_any; 10}; 11struct av 12{ 13 TEST_XPVAV* sv_any; 14}; 15struct xpvav 16{ 17 char* xav_array; 18 long int xav_fill; 19 long int xav_max; 20}; 21struct magic { 22 TEST_SV* mg_obj; 23}; 24extern TEST_SV PL_sv_undef; 25Perl_av_fill( register TEST_AV *av, int fill) 26{ 27 TEST_MAGIC *mg; 28 int key = ((TEST_XPVAV*) (av)->sv_any)->xav_fill; 29 TEST_SV** ary = ((TEST_SV**)((TEST_XPVAV*) (av)->sv_any)->xav_array); 30 while (key < fill) 31 ary[++key] = &PL_sv_undef; 32} 33