diff options
author | Jakub Jelinek <jakub@redhat.com> | 2015-06-19 09:41:49 +0200 |
---|---|---|
committer | Thomas Schwinge <tschwinge@gcc.gnu.org> | 2015-06-19 09:41:49 +0200 |
commit | 9faf9a56c9da010635712da0d2574b6e399034e0 (patch) | |
tree | 77cfb9fe4bbbda7f25221470f36a78531ecd36d6 /gcc | |
parent | bfcd036fbe7c327c8839957343edab5453faf0c8 (diff) | |
download | gcc-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/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/config/nvptx/nvptx.md | 20 |
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);") |