1/* { dg-do compile } */
2/* { dg-options "-O2" } */
3/* { dg-require-effective-target ia32 } */
4
5typedef __SIZE_TYPE__ size_t;
6extern void *malloc (size_t);
7
8register unsigned int MR_mr0 asm ("esi");
9register unsigned int MR_mr1 asm ("edi");
10
11void 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