summaryrefslogtreecommitdiff
path: root/gcc/tree-vect-generic.c
diff options
context:
space:
mode:
authorzadeck <zadeck@138bc75d-0d04-0410-961f-82ee72b054a4>2014-01-15 01:24:48 +0000
committerzadeck <zadeck@138bc75d-0d04-0410-961f-82ee72b054a4>2014-01-15 01:24:48 +0000
commit6c62aeaefe4c5086e85819bd8b96993c8b150fa3 (patch)
tree6490717242c826c8757ae29d981da0df25feb0bf /gcc/tree-vect-generic.c
parenta12aa4cc9c246f2649e4fed2bc1d8966f2752162 (diff)
downloadgcc-6c62aeaefe4c5086e85819bd8b96993c8b150fa3.tar.gz
fixed regressions in build_replicated_const
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/wide-int@206616 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vect-generic.c')
-rw-r--r--gcc/tree-vect-generic.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-vect-generic.c b/gcc/tree-vect-generic.c
index 74d29d20301..30c132ebe17 100644
--- a/gcc/tree-vect-generic.c
+++ b/gcc/tree-vect-generic.c
@@ -57,7 +57,8 @@ static tree
build_replicated_const (tree type, tree inner_type, HOST_WIDE_INT value)
{
int width = tree_to_uhwi (TYPE_SIZE (inner_type));
- int n = TYPE_PRECISION (type) / width;
+ int n = (TYPE_PRECISION (type) + HOST_BITS_PER_WIDE_INT - 1)
+ / HOST_BITS_PER_WIDE_INT;
unsigned HOST_WIDE_INT low, mask;
HOST_WIDE_INT a[WIDE_INT_MAX_ELTS];
int i;