diff options
author | Andrew Stubbs <ams@codesourcery.com> | 2020-01-07 15:27:50 +0000 |
---|---|---|
committer | Andrew Stubbs <ams@gcc.gnu.org> | 2020-01-07 15:27:50 +0000 |
commit | 0e159efc76324f40c85581af4aca9cd4f0852cc8 (patch) | |
tree | 1c5d6ac1cc77dcf03a58eebb70eea7c8279b3f91 /gcc/config/gcn/gcn.md | |
parent | bd65538abb6a48c97f9fd02d037b41e5a6397a70 (diff) | |
download | gcc-0e159efc76324f40c85581af4aca9cd4f0852cc8.zip gcc-0e159efc76324f40c85581af4aca9cd4f0852cc8.tar.gz gcc-0e159efc76324f40c85581af4aca9cd4f0852cc8.tar.bz2 |
[amdgcn] Add more modes for vector comparisons
2020-01-07 Andrew Stubbs <ams@codesourcery.com>
gcc/
* config/gcn/gcn-valu.md (VEC_1REG_INT_ALT): Delete iterator.
(VEC_ALLREG_ALT): New iterator.
(VEC_ALLREG_INT_MODE): New iterator.
(VCMP_MODE): New iterator.
(VCMP_MODE_INT): New iterator.
(vec_cmpu<mode>di): Use VCMP_MODE_INT.
(vec_cmp<u>v64qidi): New define_expand.
(vec_cmp<mode>di_exec): Use VCMP_MODE.
(vec_cmpu<mode>di_exec): New define_expand.
(vec_cmp<u>v64qidi_exec): New define_expand.
(vec_cmp<mode>di_dup): Use VCMP_MODE.
(vec_cmp<mode>di_dup_exec): Use VCMP_MODE.
(vcond<VEC_ALL1REG_MODE:mode><VEC_1REG_ALT:mode>): Rename ...
(vcond<VEC_ALLREG_MODE:mode><VEC_ALLREG_ALT:mode>): ... to this.
(vcond<VEC_ALL1REG_MODE:mode><VEC_1REG_ALT:mode>_exec): Rename ...
(vcond<VEC_ALLREG_MODE:mode><VEC_ALLREG_ALT:mode>_exec): ... to this.
(vcondu<VEC_ALL1REG_MODE:mode><VEC_1REG_INT_ALT:mode>): Rename ...
(vcondu<VEC_ALLREG_MODE:mode><VEC_ALLREG_INT_MODE:mode>): ... to this.
(vcondu<VEC_ALL1REG_MODE:mode><VEC_1REG_INT_ALT:mode>_exec): Rename ...
(vcondu<VEC_ALLREG_MODE:mode><VEC_ALLREG_INT_MODE:mode>_exec): ... to
this.
* config/gcn/gcn.c (print_operand): Fix 8 and 16 bit suffixes.
* config/gcn/gcn.md (expander): Add sign_extend and zero_extend.
From-SVN: r279961
Diffstat (limited to 'gcc/config/gcn/gcn.md')
-rw-r--r-- | gcc/config/gcn/gcn.md | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/config/gcn/gcn.md b/gcc/config/gcn/gcn.md index 914a43a..a470536 100644 --- a/gcc/config/gcn/gcn.md +++ b/gcc/config/gcn/gcn.md @@ -360,7 +360,9 @@ (not "one_cmpl") (popcount "popcount") (clz "clz") - (ctz "ctz")]) + (ctz "ctz") + (sign_extend "extend") + (zero_extend "zero_extend")]) ;; }}} ;; {{{ Miscellaneous instructions |