Add "sorry, target cannot support label values" for nvptx
2017-06-09 Tom de Vries <tom@codesourcery.com>
PR target/80855
* config/nvptx/nvptx.md (define_expand "mov<QHSDISDFM>"): Error out with
"target cannot support label values" when encountering LABEL_REF.
* gcc.target/nvptx/label-values.c: New test.
---
gcc/config/nvptx/nvptx.md | 3 +++
gcc/testsuite/gcc.target/nvptx/label-values.c | 14 ++++++++++++++
4 files changed, 28 insertions(+)
@@ -254,6 +254,9 @@
emit_move_insn (operands[0], tmp);
DONE;
}
+
+ if (GET_CODE (operands[1]) == LABEL_REF)
+ sorry ("target cannot support label values");
})
(define_insn "zero_extendqihi2"
new file mode 100644
@@ -0,0 +1,14 @@
+/* { dg-do compile } */
+/* { dg-additional-options "-Wno-pedantic" } */
+
+int
+main (void)
+{
+ goto L2;
+ L1:
+ return 0;
+ L2:
+ {
+ void *ptr = &&L1; /* { dg-message "sorry, unimplemented: target cannot support label values" "" } */
+ }
+}