GCC Middle and Back End API Reference
omp-simd-clone.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void expand_simd_clones (struct cgraph_node *)
 

Function Documentation

◆ expand_simd_clones()

void expand_simd_clones ( struct cgraph_node * node)
extern
OMP constructs' SIMD clone supporting code.

   Copyright (C) 2005-2024 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/>.   
If the function in NODE is tagged as an elemental SIMD function,
create the appropriate SIMD clones.   

References build_distinct_type_copy(), symbol_table::change_decl_assembler_name(), count, symtab_node::decl, DECL_ASSEMBLER_NAME, DECL_ATTRIBUTES, symtab_node::definition, dump_file, cgraph_node::get_body(), get_identifier(), ggc_alloc(), cgraph_node::has_gimple_body_p(), i, IDENTIFIER_POINTER, cgraph_simd_clone::inbranch, cgraph_node::inlined_to, lookup_attribute(), cgraph_simd_clone::nargs, cgraph_simd_clone::next_clone, NULL, NULL_TREE, oacc_get_fn_attrib(), ok_for_auto_simd_clone(), OMP_TARGET_SIMD_CLONE_ANY, OMP_TARGET_SIMD_CLONE_HOST, OMP_TARGET_SIMD_CLONE_NOHOST, cgraph_simd_clone::origin, cgraph_simd_clone::prev_clone, simd_clone_adjust(), simd_clone_adjust_argument_types(), simd_clone_adjust_return_type(), simd_clone_clauses_extract(), simd_clone_compute_base_data_type(), simd_clone_create(), simd_clone_mangle(), simd_clone_struct_alloc(), simd_clone_struct_copy(), cgraph_node::simd_clones, cgraph_node::simdclone, cgraph_simd_clone::simdlen, symtab, targetm, TREE_CHAIN, tree_cons(), TREE_PUBLIC, TREE_TYPE, TREE_VALUE, and TYPE_ARG_TYPES.

Referenced by ipa_omp_simd_clone(), and vect_recog_pow_pattern().