diff options
Diffstat (limited to 'gcc/tree-vector-builder.c')
-rw-r--r-- | gcc/tree-vector-builder.c | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/gcc/tree-vector-builder.c b/gcc/tree-vector-builder.c deleted file mode 100644 index a09d667..0000000 --- a/gcc/tree-vector-builder.c +++ /dev/null @@ -1,49 +0,0 @@ -/* A class for building vector tree constants. - Copyright (C) 2017-2022 Free Software Foundation, Inc. - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify it under -the terms of the GNU General Public License as published by the Free -Software Foundation; either version 3, or (at your option) any later -version. - -GCC is distributed in the hope that it will be useful, but WITHOUT ANY -WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING3. If not see -<http://www.gnu.org/licenses/>. */ - -#include "config.h" -#include "system.h" -#include "coretypes.h" -#include "tree.h" -#include "fold-const.h" -#include "tree-vector-builder.h" - -/* Return a vector element with the value BASE + FACTOR * STEP. */ - -tree -tree_vector_builder::apply_step (tree base, unsigned int factor, - const wide_int &step) const -{ - return wide_int_to_tree (TREE_TYPE (base), - wi::to_wide (base) + factor * step); -} - -/* Return a VECTOR_CST for the current constant. */ - -tree -tree_vector_builder::build () -{ - finalize (); - gcc_assert (pow2p_hwi (npatterns ())); - tree v = make_vector (exact_log2 (npatterns ()), nelts_per_pattern ()); - TREE_TYPE (v) = m_type; - memcpy (VECTOR_CST_ENCODED_ELTS (v), address (), - encoded_nelts () * sizeof (tree)); - return v; -} |