Mostly revert r254296
commit499d260609c095f24afbd8960c2e076b9d417796
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 10 Jan 2018 08:46:07 +0000 (10 08:46 +0000)
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 10 Jan 2018 08:46:07 +0000 (10 08:46 +0000)
treefb71cd4c9d25b4c0689180b831233d246d68e6cb
parent1b06efcbed2c253af915d612f1e2af28edb88a2e
Mostly revert r254296

r254296 added support for (const ...) wrappers around vectors,
but in the end the agreement was to use a variable-length
encoding of CONST_VECTOR (and VECTOR_CST) instead.  This patch
therefore reverts the bits that are no longer needed.

The rtl.texi part isn't a full revert, since r254296 also updated the
documentation to mention unspecs in address calculations, and to relax
the requirement that the mode had to be Pmode.

2018-01-10  Richard Sandiford  <richard.sandiford@linaro.org>

gcc/
* doc/rtl.texi: Remove documentation of (const ...) wrappers
for vectors, as a partial revert of r254296.
* rtl.h (const_vec_p): Delete.
(const_vec_duplicate_p): Don't test for vector CONSTs.
(unwrap_const_vec_duplicate, const_vec_series_p): Likewise.
* expmed.c (make_tree): Likewise.

Revert:
* common.md (E, F): Use CONSTANT_P instead of checking for
CONST_VECTOR.
* emit-rtl.c (gen_lowpart_common): Use const_vec_p instead of
checking for CONST_VECTOR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@256421 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/common.md
gcc/doc/rtl.texi
gcc/emit-rtl.c
gcc/expmed.c
gcc/rtl.h