aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@codesourcery.com>2017-02-21 11:42:07 +0100
committerThomas Schwinge <tschwinge@gcc.gnu.org>2017-02-21 11:42:07 +0100
commit3c5b4c6dd9197da16bc857e2226c084420526b55 (patch)
tree2f68397ad6ff4f05abfcc0dcb78c79cc2fd6496a /gcc
parent319633cd769d34df74fcbe89363c96cd3400d335 (diff)
downloadgcc-3c5b4c6dd9197da16bc857e2226c084420526b55.zip
gcc-3c5b4c6dd9197da16bc857e2226c084420526b55.tar.gz
gcc-3c5b4c6dd9197da16bc857e2226c084420526b55.tar.bz2
[PR translation/79638] "%ntid.y" confuses gcc.pot generation
gcc/ * config/nvptx/nvptx.c (ENTRY_TEMPLATE): Single out "%ntid.y". From-SVN: r245623
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/nvptx/nvptx.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d23fcbf..fe9018f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2017-02-21 Thomas Schwinge <thomas@codesourcery.com>
+
+ PR translation/79638
+ * config/nvptx/nvptx.c (ENTRY_TEMPLATE): Single out "%ntid.y".
+
2017-02-21 Eric Botcazou <ebotcazou@adacore.com>
PR ada/67205
diff --git a/gcc/config/nvptx/nvptx.c b/gcc/config/nvptx/nvptx.c
index 98278d3..c52b090 100644
--- a/gcc/config/nvptx/nvptx.c
+++ b/gcc/config/nvptx/nvptx.c
@@ -1123,13 +1123,15 @@ write_omp_entry (FILE *file, const char *name, const char *orig)
func_decls << ".extern .func gomp_nvptx_main (.param.u" << POINTER_SIZE
<< " %in_ar1, .param.u" << POINTER_SIZE << " %in_ar2);\n";
}
+ /* PR79332. Single out this string; it confuses gcc.pot generation. */
+#define NTID_Y "%ntid.y"
#define ENTRY_TEMPLATE(PS, PS_BYTES, MAD_PS_32) "\
(.param.u" PS " %arg, .param.u" PS " %stack, .param.u" PS " %sz)\n\
{\n\
.reg.u32 %r<3>;\n\
.reg.u" PS " %R<4>;\n\
mov.u32 %r0, %tid.y;\n\
- mov.u32 %r1, %ntid.y;\n\
+ mov.u32 %r1, " NTID_Y ";\n\
mov.u32 %r2, %ctaid.x;\n\
cvt.u" PS ".u32 %R1, %r0;\n\
" MAD_PS_32 " %R1, %r1, %r2, %R1;\n\
@@ -1157,6 +1159,7 @@ write_omp_entry (FILE *file, const char *name, const char *orig)
static const char entry64[] = ENTRY_TEMPLATE ("64", "8", "mad.wide.u32");
static const char entry32[] = ENTRY_TEMPLATE ("32", "4", "mad.lo.u32 ");
#undef ENTRY_TEMPLATE
+#undef NTID_Y
const char *entry_1 = TARGET_ABI64 ? entry64 : entry32;
/* Position ENTRY_2 after the embedded nul using strlen of the prefix. */
const char *entry_2 = entry_1 + strlen (entry64) + 1;