GCC Middle and Back End API Reference
complex_operations_pattern Class Reference
Inheritance diagram for complex_operations_pattern:
Collaboration diagram for complex_operations_pattern:

Public Member Functions

void build (vec_info *) final override
 

Static Public Member Functions

static internal_fn matches (complex_operation_t op, slp_tree_to_load_perm_map_t *, slp_compat_nodes_map_t *, slp_tree *, vec< slp_tree > *)
 
static vect_patternrecognize (slp_tree_to_load_perm_map_t *, slp_compat_nodes_map_t *, slp_tree *)
 
static internal_fn matches (complex_operation_t op, slp_tree_to_load_perm_map_t *, slp_tree *, vec< slp_tree > *)
 

Protected Member Functions

 complex_operations_pattern (slp_tree *node, vec< slp_tree > *m_ops, internal_fn ifn)
 

Protected Attributes

auto_vec< slp_treem_workset
 
unsigned m_num_args
 
internal_fn m_ifn
 
slp_treem_node
 
vec< slp_treem_ops
 

Detailed Description

This function combines all the existing pattern matchers above into one class
that shares the functionality between them.  The initial match is shared
between all complex operations.   

Constructor & Destructor Documentation

◆ complex_operations_pattern()

complex_operations_pattern::complex_operations_pattern ( slp_tree * node,
vec< slp_tree > * m_ops,
internal_fn ifn )
inlineprotected

Member Function Documentation

◆ build()

void complex_operations_pattern::build ( vec_info * )
finaloverridevirtual
Dummy implementation of build.   

Implements vect_pattern.

References gcc_unreachable.

◆ matches() [1/2]

internal_fn complex_operations_pattern::matches ( complex_operation_t op,
slp_tree_to_load_perm_map_t * ,
slp_compat_nodes_map_t * ,
slp_tree * ,
vec< slp_tree > *  )
static
Dummy matches implementation for proxy object.   

References IFN_LAST.

◆ matches() [2/2]

static internal_fn complex_pattern::matches ( complex_operation_t op,
slp_tree_to_load_perm_map_t * ,
slp_tree * ,
vec< slp_tree > *  )
staticinherited

◆ recognize()

Field Documentation

◆ m_ifn

internal_fn vect_pattern::m_ifn
protectedinherited

◆ m_node

◆ m_num_args

◆ m_ops

◆ m_workset

auto_vec<slp_tree> complex_pattern::m_workset
protectedinherited

Referenced by complex_pattern::build().


The documentation for this class was generated from the following file: