diff options
Diffstat (limited to 'packages/gcc-linaro/6.3-2017.05/873-gcc-xtensa-fix-fprintf-format-specifiers.patch')
-rw-r--r-- | packages/gcc-linaro/6.3-2017.05/873-gcc-xtensa-fix-fprintf-format-specifiers.patch | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/packages/gcc-linaro/6.3-2017.05/873-gcc-xtensa-fix-fprintf-format-specifiers.patch b/packages/gcc-linaro/6.3-2017.05/873-gcc-xtensa-fix-fprintf-format-specifiers.patch deleted file mode 100644 index a5b06248..00000000 --- a/packages/gcc-linaro/6.3-2017.05/873-gcc-xtensa-fix-fprintf-format-specifiers.patch +++ /dev/null @@ -1,74 +0,0 @@ -From a3d07c8a2a9564b57ebcae8463c1541a37c97c34 Mon Sep 17 00:00:00 2001 -From: Max Filippov <jcmvbkbc@gmail.com> -Date: Sun, 28 May 2017 19:56:56 -0700 -Subject: [PATCH] gcc: xtensa: fix fprintf format specifiers - -HOST_WIDE_INT may not be long as assumed in print_operand and -xtensa_emit_call. Use HOST_WIDE_INT_PRINT_DEC/HOST_WIDE_INT_PRINT_HEX -format strings instead of %ld/0x%lx. This fixes incorrect assembly code -generation by the compiler running on armhf host. - -2017-05-28 Max Filippov <jcmvbkbc@gmail.com> -gcc/ - * config/xtensa/xtensa.c (xtensa_emit_call): Use - HOST_WIDE_INT_PRINT_HEX instead of 0x%lx format string. - (print_operand): Use HOST_WIDE_INT_PRINT_DEC instead of %ld - format string. - -Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> ---- - gcc/config/xtensa/xtensa.c | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c -index 70f698a..2bdf5cc 100644 ---- a/gcc/config/xtensa/xtensa.c -+++ b/gcc/config/xtensa/xtensa.c -@@ -1776,7 +1776,8 @@ xtensa_emit_call (int callop, rtx *operands) - rtx tgt = operands[callop]; - - if (GET_CODE (tgt) == CONST_INT) -- sprintf (result, "call%d\t0x%lx", WINDOW_SIZE, INTVAL (tgt)); -+ sprintf (result, "call%d\t" HOST_WIDE_INT_PRINT_HEX, -+ WINDOW_SIZE, INTVAL (tgt)); - else if (register_operand (tgt, VOIDmode)) - sprintf (result, "callx%d\t%%%d", WINDOW_SIZE, callop); - else -@@ -2347,14 +2348,14 @@ print_operand (FILE *file, rtx x, int letter) - - case 'L': - if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", (32 - INTVAL (x)) & 0x1f); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, (32 - INTVAL (x)) & 0x1f); - else - output_operand_lossage ("invalid %%L value"); - break; - - case 'R': - if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", INTVAL (x) & 0x1f); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x) & 0x1f); - else - output_operand_lossage ("invalid %%R value"); - break; -@@ -2368,7 +2369,7 @@ print_operand (FILE *file, rtx x, int letter) - - case 'd': - if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", INTVAL (x)); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x)); - else - output_operand_lossage ("invalid %%d value"); - break; -@@ -2433,7 +2434,7 @@ print_operand (FILE *file, rtx x, int letter) - else if (GET_CODE (x) == MEM) - output_address (GET_MODE (x), XEXP (x, 0)); - else if (GET_CODE (x) == CONST_INT) -- fprintf (file, "%ld", INTVAL (x)); -+ fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x)); - else - output_addr_const (file, x); - } --- -2.1.4 - |