public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] RISC-V: THEAD: Fix improper immediate value for MODIFY_DISP instruction on 32-bit systems.
@ 2024-01-29  9:20 Jin Ma
  2024-01-29  9:23 ` Andrew Pinski
  2024-01-29  9:57 ` [PATCH v2] " Jin Ma
  0 siblings, 2 replies; 13+ messages in thread
From: Jin Ma @ 2024-01-29  9:20 UTC (permalink / raw)
  To: gcc-patches
  Cc: jeffreyalaw, palmer, richard.sandiford, kito.cheng,
	christoph.muellner, rdapp.gcc, juzhe.zhong, jinma.contrib,
	Jin Ma

When using  '%ld' to print 'long long int' variable, 'fprintf' will
produce messy output on a 32-bit system, in an incorrect instruction
being generated, such as 'th.lwib a1,(a0),-16,4294967295'. And the
following error occurred during compilation:

Assembler messages:
Error: improper immediate value (18446744073709551615)

gcc/ChangeLog:

	* config/riscv/thead.cc (th_print_operand_address): Change %ld
	to %lld.
---
 gcc/config/riscv/thead.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/config/riscv/thead.cc b/gcc/config/riscv/thead.cc
index 2955bc5f8a9..9ee6444b627 100644
--- a/gcc/config/riscv/thead.cc
+++ b/gcc/config/riscv/thead.cc
@@ -1141,7 +1141,7 @@ th_print_operand_address (FILE *file, machine_mode mode, rtx x)
       return true;
 
     case ADDRESS_REG_WB:
-      fprintf (file, "(%s),%ld,%u", reg_names[REGNO (addr.reg)],
+      fprintf (file, "(%s),%lld,%u", reg_names[REGNO (addr.reg)],
 	       INTVAL (addr.offset) >> addr.shift, addr.shift);
 	return true;
 
-- 
2.17.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2024-02-05 23:23 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-29  9:20 [PATCH] RISC-V: THEAD: Fix improper immediate value for MODIFY_DISP instruction on 32-bit systems Jin Ma
2024-01-29  9:23 ` Andrew Pinski
2024-01-29  9:36   ` Jin Ma
2024-01-29  9:57 ` [PATCH v2] " Jin Ma
2024-01-29 12:32   ` Kito Cheng
2024-01-30  6:40     ` Christoph Müllner
2024-02-03 13:11       ` Andreas Schwab
2024-02-05 12:00         ` Christoph Müllner
2024-02-05 14:56           ` Jeff Law
2024-02-05 15:08             ` Andreas Schwab
2024-02-05 15:34               ` Jeff Law
2024-02-05 15:39                 ` Andreas Schwab
2024-02-05 23:23             ` Christoph Müllner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).