Use maybe_split_mode in nvptx_print_operand
authorTom de Vries <tom@codesourcery.com>
Tue, 6 Jun 2017 12:24:41 +0000 (12:24 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Tue, 6 Jun 2017 12:24:41 +0000 (12:24 +0000)
2017-06-06  Tom de Vries  <tom@codesourcery.com>

* config/nvptx/nvptx.c (nvptx_print_operand): Use maybe_split_mode.

From-SVN: r248917

gcc/ChangeLog
gcc/config/nvptx/nvptx.c

index 1e0542e82231a65f59ac6ebe1f4db8688e03d897..aeeadfb83997325d798f196ab1341ad2c8070de3 100644 (file)
@@ -1,3 +1,7 @@
+2017-06-06  Tom de Vries  <tom@codesourcery.com>
+
+       * config/nvptx/nvptx.c (nvptx_print_operand): Use maybe_split_mode.
+
 2017-06-06  Jan Hubicka  <hubicka@ucw.cz>
 
        PR bootstrap/80978
index 4c35c16ee95d44d89df9d198a5643e8e2db5c98f..75ecc94be1f4b1c32f673261aea8f46f3de16419 100644 (file)
@@ -2396,10 +2396,9 @@ nvptx_print_operand (FILE *file, rtx x, int code)
       if (x_code == SUBREG)
        {
          mode = GET_MODE (SUBREG_REG (x));
-         if (mode == TImode)
-           mode = DImode;
-         else if (COMPLEX_MODE_P (mode))
-           mode = GET_MODE_INNER (mode);
+         machine_mode split = maybe_split_mode (mode);
+         if (split != VOIDmode)
+           mode = split;
        }
       fprintf (file, "%s", nvptx_ptx_type_from_mode (mode, code == 't'));
       break;