On 01/02/2024 13:49, Thomas Schwinge wrote:
Hi!

On 2018-12-12T11:52:52+0000, Andrew Stubbs <a...@codesourcery.com> wrote:
This patch contains the major part of the GCN back-end.  [...]

--- /dev/null
+++ b/gcc/config/gcn/gcn.c

+void
+gcn_hsa_declare_function_name (FILE *file, const char *name, tree)
+{

+  /* Determine count of sgpr/vgpr registers by looking for last
+     one used.  */
+  for (sgpr = 101; sgpr >= 0; sgpr--)
+    if (df_regs_ever_live_p (FIRST_SGPR_REG + sgpr))
+      break;
+  sgpr++;
+  for (vgpr = 255; vgpr >= 0; vgpr--)
+    if (df_regs_ever_live_p (FIRST_VGPR_REG + vgpr))
+      break;
+  vgpr++;

--- /dev/null
+++ b/gcc/config/gcn/gcn.h

+#define FIRST_SGPR_REG     0
+#define SGPR_REGNO(N)      ((N)+FIRST_SGPR_REG)
+#define LAST_SGPR_REG      101

+#define FIRST_VGPR_REG     160
+#define VGPR_REGNO(N)      ((N)+FIRST_VGPR_REG)
+#define LAST_VGPR_REG      415

OK to push "GCN: Don't hard-code number of SGPR/VGPR/AVGPR registers",
see attached?

OK.

Andrew

Reply via email to