aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@acm.org>2015-12-30 15:52:59 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2015-12-30 15:52:59 +0000
commit0a0f74aaf1d85e70813288ff27756d81bb555f5a (patch)
tree5bff308369ce63da9e2441a56623654277638aaf /gcc/config
parenta7557c5effc9509f30ab9af6a02269beede16d9b (diff)
downloadgcc-0a0f74aaf1d85e70813288ff27756d81bb555f5a.zip
gcc-0a0f74aaf1d85e70813288ff27756d81bb555f5a.tar.gz
gcc-0a0f74aaf1d85e70813288ff27756d81bb555f5a.tar.bz2
nvptx.c (nvptx_assemble_undefined_decl): Check it's not a constant pool object.
* config/nvptx/nvptx.c (nvptx_assemble_undefined_decl): Check it's not a constant pool object. From-SVN: r232003
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/nvptx/nvptx.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/config/nvptx/nvptx.c b/gcc/config/nvptx/nvptx.c
index 0f232a3..5f953a1 100644
--- a/gcc/config/nvptx/nvptx.c
+++ b/gcc/config/nvptx/nvptx.c
@@ -1718,6 +1718,11 @@ nvptx_globalize_label (FILE *, const char *)
static void
nvptx_assemble_undefined_decl (FILE *file, const char *name, const_tree decl)
{
+ /* The middle end can place constant pool decls into the varpool as
+ undefined. Until that is fixed, catch the problem here. */
+ if (DECL_IN_CONSTANT_POOL (decl))
+ return;
+
write_var_marker (file, false, TREE_PUBLIC (decl), name);
fprintf (file, "\t.extern ");