This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[nvptx] disable another test


I've committed this to avoid tripping over another ptx assembler problem. memcpy is used for block move, and the FUNCTION_DECL for that is created uniquely in expr.c. It's not linked up to any other decl for memcpy.

PTX requires declarations forexternal symbols, so we emit one for the blkmove variant. We also emit a definition in this particular testcase, and the PTX assembler complains that we've said both 'external', and 'definition'. Rather than go through heroics for just this testcase, I skip it.

nathan
2015-08-25  Nathan Sidwell  <nathan@acm.org>

	* gcc.c-torture/execute/builtins/20010124-1.x: New.

Index: gcc.c-torture/execute/builtins/20010124-1.x
===================================================================
--- gcc.c-torture/execute/builtins/20010124-1.x	(revision 0)
+++ gcc.c-torture/execute/builtins/20010124-1.x	(working copy)
@@ -0,0 +1,10 @@
+load_lib target-supports.exp
+
+if [istarget "nvptx-*-*"] {
+    # This test uses memcpy for block move in the same file as it
+    # defines it.  The two decls are not the same, by design, and we
+    # end up emitting a definition of memcpy, along with a .extern
+    # declaration. This confuses the ptx assembler.
+    return 1
+}
+return 0

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]