diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2017-08-24 11:40:55 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@gcc.gnu.org> | 2017-08-24 11:40:55 +0000 |
commit | e4f22d970ec86797c202c327ff3fffdb56a4b6a3 (patch) | |
tree | 3dd30de9e33bcf8e9619f3822cd30027a4a622c7 /gcc/tree-ssanames.c | |
parent | dc0c1e44766b850cf7418badc99a97a044681409 (diff) | |
download | gcc-e4f22d970ec86797c202c327ff3fffdb56a4b6a3.zip gcc-e4f22d970ec86797c202c327ff3fffdb56a4b6a3.tar.gz gcc-e4f22d970ec86797c202c327ff3fffdb56a4b6a3.tar.bz2 |
re PR middle-end/81931 (r251260 breaks many tests on powerpc64)
PR middle-end/81931
* tree-ssanames.c (get_nonzero_bits): Use element_precision
instead of TYPE_PRECISION.
From-SVN: r251328
Diffstat (limited to 'gcc/tree-ssanames.c')
-rw-r--r-- | gcc/tree-ssanames.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-ssanames.c b/gcc/tree-ssanames.c index 676c806..e48d086 100644 --- a/gcc/tree-ssanames.c +++ b/gcc/tree-ssanames.c @@ -470,7 +470,9 @@ get_nonzero_bits (const_tree name) if (TREE_CODE (name) == INTEGER_CST) return name; - unsigned int precision = TYPE_PRECISION (TREE_TYPE (name)); + /* Use element_precision instead of TYPE_PRECISION so complex and + vector types get a non-zero precision. */ + unsigned int precision = element_precision (TREE_TYPE (name)); if (POINTER_TYPE_P (TREE_TYPE (name))) { struct ptr_info_def *pi = SSA_NAME_PTR_INFO (name); |