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; 25void 26Perl_av_fill( register TEST_AV *av, int fill) 27{ 28 TEST_MAGIC *mg; 29 int key = ((TEST_XPVAV*) (av)->sv_any)->xav_fill; 30 TEST_SV** ary = ((TEST_SV**)((TEST_XPVAV*) (av)->sv_any)->xav_array); 31 while (key < fill) 32 ary[++key] = &PL_sv_undef; 33} 34