diff --git a/gcc/ChangeLog b/gcc/ChangeLog index badfe80ae71..467a8a23afc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2009-12-14 Jakub Jelinek + PR bootstrap/42369 + * config/i386/i386.c (ix86_expand_special_args_builtin): Avoid + using switch with CODE_FOR_lwp_lwp* cases. + * config/i386/i386-builtin-types.def (PVOID_FTYPE_VOID): Use DEF_FUNCTION_TYPE (PVOID) instead of DEF_FUNCTION_TYPE (PVOID, VOID). diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 9b739a6c95b..281bd416a51 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -23836,19 +23836,16 @@ ix86_expand_special_args_builtin (const struct builtin_description *d, if (last_arg_constant && (i + 1) == nargs) { if (!match) - switch (icode) - { - case CODE_FOR_lwp_lwpvalsi3: - case CODE_FOR_lwp_lwpvaldi3: - case CODE_FOR_lwp_lwpinssi3: - case CODE_FOR_lwp_lwpinsdi3: + { + if (icode == CODE_FOR_lwp_lwpvalsi3 + || icode == CODE_FOR_lwp_lwpinssi3 + || icode == CODE_FOR_lwp_lwpvaldi3 + || icode == CODE_FOR_lwp_lwpinsdi3) error ("the last argument must be a 32-bit immediate"); - return const0_rtx; - - default: + else error ("the last argument must be an 8-bit immediate"); - return const0_rtx; - } + return const0_rtx; + } } else {