1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
3 /* { dg-require-effective-target ia32 } */
4 
5 typedef __SIZE_TYPE__ size_t;
6 extern void *malloc (size_t);
7 
8 register unsigned int MR_mr0 asm ("esi");
9 register unsigned int MR_mr1 asm ("edi");
10 
ml_backend__ml_closure_gen_module11(void)11 void ml_backend__ml_closure_gen_module11 (void)
12 {
13   unsigned int MR_tempr1, MR_tempr2, MR_tempr3;
14 
15   MR_tempr1 = (unsigned int)((char *) malloc (sizeof (unsigned int)) + 4);
16   MR_tempr3 = ((unsigned int *) MR_mr0)[0];
17 
18   ((unsigned int *) (MR_tempr1 - 4))[0] = MR_tempr3;
19 
20   MR_tempr2 = (unsigned int)((char *) malloc (2 * sizeof (unsigned int)));
21 
22   ((unsigned int *) MR_tempr2)[1] = MR_tempr1;
23 }
24