aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2015-06-19 09:41:49 +0200
committerThomas Schwinge <tschwinge@gcc.gnu.org>2015-06-19 09:41:49 +0200
commit9faf9a56c9da010635712da0d2574b6e399034e0 (patch)
tree77cfb9fe4bbbda7f25221470f36a78531ecd36d6 /gcc
parentbfcd036fbe7c327c8839957343edab5453faf0c8 (diff)
downloadgcc-9faf9a56c9da010635712da0d2574b6e399034e0.zip
gcc-9faf9a56c9da010635712da0d2574b6e399034e0.tar.gz
gcc-9faf9a56c9da010635712da0d2574b6e399034e0.tar.bz2
[nvptx] Address genrecog warnings
build/genrecog [...]/source-gcc/gcc/common.md [...]/source-gcc/gcc/config/nvptx/nvptx.md \ insn-conditions.md > tmp-recog.c [...]/source-gcc/gcc/config/nvptx/nvptx.md:1206: warning: operand 0 missing mode? [...]/source-gcc/gcc/config/nvptx/nvptx.md:1206: warning: operand 1 missing mode? gcc/ * config/nvptx/nvptx.md (allocate_stack): Rename to... (allocate_stack_<mode>): ... this, and add :P on both match_operand and unspec. (allocate_stack): New expander. From-SVN: r224641
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/nvptx/nvptx.md20
2 files changed, 23 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 28494ff..eb37d08 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2015-06-19 Jakub Jelinek <jakub@redhat.com>
+
+ * config/nvptx/nvptx.md (allocate_stack): Rename to...
+ (allocate_stack_<mode>): ... this, and add :P on both
+ match_operand and unspec.
+ (allocate_stack): New expander.
+
2015-06-19 Christian Bruel <christian.bruel@st.com>
PR target/66541
diff --git a/gcc/config/nvptx/nvptx.md b/gcc/config/nvptx/nvptx.md
index c30de36..a49786c 100644
--- a/gcc/config/nvptx/nvptx.md
+++ b/gcc/config/nvptx/nvptx.md
@@ -1203,10 +1203,22 @@
sorry ("target cannot support nonlocal goto.");
})
-(define_insn "allocate_stack"
- [(set (match_operand 0 "nvptx_register_operand" "=R")
- (unspec [(match_operand 1 "nvptx_register_operand" "R")]
- UNSPEC_ALLOCA))]
+(define_expand "allocate_stack"
+ [(match_operand 0 "nvptx_register_operand")
+ (match_operand 1 "nvptx_register_operand")]
+ ""
+{
+ if (TARGET_ABI64)
+ emit_insn (gen_allocate_stack_di (operands[0], operands[1]));
+ else
+ emit_insn (gen_allocate_stack_si (operands[0], operands[1]));
+ DONE;
+})
+
+(define_insn "allocate_stack_<mode>"
+ [(set (match_operand:P 0 "nvptx_register_operand" "=R")
+ (unspec:P [(match_operand:P 1 "nvptx_register_operand" "R")]
+ UNSPEC_ALLOCA))]
""
"%.\\tcall (%0), %%alloca, (%1);")