diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b7cb4fea6b80f424ae77d47e1cbfd27c6423d6d5..7c6b4360b60d3ed292d2363a600abbbae2730cba 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2017-08-30  Richard Sandiford  <richard.sandiford@linaro.org>
+
+	* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
+	Use machine_mode rather than int for arg1_mode.
+
 2017-08-29  Michael Meissner  <meissner@linux.vnet.ibm.com>
 
 	PR target/82015
diff --git a/gcc/config/rs6000/rs6000-c.c b/gcc/config/rs6000/rs6000-c.c
index 1c9a8db7c628bffd79a7fc1c293758ac5ef2fb2f..2ab8793e1d2148e33ceceefa40e4e1703475ece1 100644
--- a/gcc/config/rs6000/rs6000-c.c
+++ b/gcc/config/rs6000/rs6000-c.c
@@ -6729,7 +6729,7 @@ altivec_resolve_overloaded_builtin (location_t loc, tree fndecl,
     else if (fcode == P9V_BUILTIN_VEC_VSIEDP)
       {
 	int overloaded_code;
-	int arg1_mode = TYPE_MODE (types[0]);
+	machine_mode arg1_mode = TYPE_MODE (types[0]);
 
 	if (nargs != 2)
 	  {