On 02/15/16 13:44, Alexander Monakov wrote:
This patch implements the NVPTX backend part of the transition to

+  static const char template64[] = ENTRY_TEMPLATE ("64", "8", "mad.wide.u32");
+  static const char template32[] = ENTRY_TEMPLATE ("32", "4", "mad.lo.u32  ");
+#undef ENTRY_TEMPLATE
+  const char *template_1 = TARGET_ABI64 ? template64 : template32;
+  const char *template_2 = template_1 + strlen (template64) + 1;
                                         ^^^
this looks mighty suspicious -- are you presuming some specific placement of template64 & template32? (and even then I think it'll only work for TARGET_ABI64)

+  s << ".visible .entry " << name << template_1 << orig << template_2;
+  need_softstack_decl = need_unisimt_decl = true;

Reply via email to