diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 79b40fe9156..2690bd193aa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2009-01-06 Jan Hubicka + + PR target/38744 + * i386.c (ix86_expand_call): Use ARRAY_SIZE + 2009-01-06 Gerald Pfeifer * doc/contrib.texi (Contributors): Slightly adjust the end note. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 91af83a87b7..c4d044955a6 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -18505,16 +18505,16 @@ ix86_expand_call (rtx retval, rtx fnaddr, rtx callarg1, by SYSV calls. */ if (ix86_cfun_abi () == MS_ABI && function_call_abi == SYSV_ABI) { - static int clobbered_registers[] ={27, 28, 45, 46, 47, 48, 49, 50, 51, 52, SI_REG, DI_REG}; - static const int nclobbered_registers = sizeof (clobbered_registers) / sizeof (int); - int i; - rtx vec[nclobbered_registers + 2]; + static int clobbered_registers[] = {27, 28, 45, 46, 47, 48, 49, 50, 51, + 52, SI_REG, DI_REG}; + unsigned int i; + rtx vec[ARRAY_SIZE (clobbered_registers) + 2]; rtx unspec = gen_rtx_UNSPEC (VOIDmode, gen_rtvec (1, const0_rtx), UNSPEC_MS_TO_SYSV_CALL); vec[0] = call; vec[1] = unspec; - for (i = 0; i < nclobbered_registers; i++) + for (i = 0; i < ARRAY_SIZE (clobbered_registers); i++) vec[i + 2] = gen_rtx_CLOBBER (SSE_REGNO_P (clobbered_registers[i]) ? TImode : DImode, gen_rtx_REG @@ -18523,7 +18523,8 @@ ix86_expand_call (rtx retval, rtx fnaddr, rtx callarg1, clobbered_registers[i])); call = gen_rtx_PARALLEL (VOIDmode, - gen_rtvec_v (nclobbered_registers + 2, vec)); + gen_rtvec_v (ARRAY_SIZE (clobbered_registers) + + 2, vec)); } call = emit_call_insn (call);